for语句不用看,我现在想做的是,最下面的路径设置,是我整个js文件要调用的,因为有文件流写入什么的所以不能放到function里面,但是varpath=trace_path+separator+trace_name+separ...
for语句不用看,我现在想做的是,最下面的路径设置,是我整个js文件要调用的,因为有文件流写入什么的所以不能放到function里面,但是var path = trace_path + separator + trace_name + separator+"IQ"+startLineNum+"-"+endLineNum+".dat";里面的startLineNum是try{}里面的变量,我现在想做个闭包,调用function里面的那个startLineNum,我应该怎么写?代码里面的注释是我看着网上的试着写的。可是都不对,出来的文件名不随我的变量名变化。希望我说清楚了……
function loadSettingsFromFile( configFile )
{
try {
var props = new Properties();
var setting_fis = new FileInputStream( configFile );
props.load(setting_fis);
setting_fis.close();
setting_fis = null;
MessageAndValues_Init( false );
startLineNum = props.getProperty(KEY_START_INDEX,"1");
endLineNum = props.getProperty(KEY_END_INDEX,size+"");
filterType = props.getProperty(KEY_FILTER_TYPE,"M");
fileFormat = props.getProperty(KEY_FILE_FORMAT,"C");
ParamType = props.getProperty(KEY_PARAM_TYPE,"L");
Filename_Rules = props.getProperty(KEY_RULES_FILE,PathSession + "AutoExport.rules");
for (var i = 0; i < ParamMax; i++)
{
SearchMid[i] = new String(props.getProperty(KEY_MID+"_"+i,SearchMid[i]));
SearchMt[i] = new String(props.getProperty(KEY_MT+"_"+i,SearchMt[i]));
SearchField[i] = new String(props.getProperty(KEY_FIELD+"_"+i,SearchField[i]));
SearchMessage[i] = new String(props.getProperty(KEY_MESSAGE+"_"+i,SearchMessage[i]));
SearchValues[i] = new String(props.getProperty(KEY_VALUES+"_"+i,SearchValues[i]));
SearchScripts[i] = new String(props.getProperty(KEY_SCRIPTS+"_"+i,SearchScripts[i]));
}
if (props.getProperty(KEY_SINGLE_OUTPUT,"").equals ("YES"))
singleOuputFile = true;
else
singleOuputFile = false;
} catch (e) {
logException( e );
startLineNum = 0;
endLineNum = 0;
Filename_Rules = PathSession + "AutoExport.rules";
}
if (display != null)
{
startTraceIndexTF.setText( startLineNum );
endTraceIndexTF.setText( endLineNum );
filterTF.setText( Filename_Rules );
FullPayload_Update();
MessageAndValues_Update();
}
//var StartlineNum = function(){return startLineNum;}
//var EndlineNum = function(){return EndLineNum;}
// return (props);
/*function f2(){
var STARTlineNum = startLineNum;
};
return f2;
*/
/* return startLineNum;
} */
var path = trace_path + separator + trace_name + separator+"IQ"+startLineNum+"-"+endLineNum+trace_name+CfgExtension;
var fileWriter = new FileWriter(path);
var path = trace_path + separator + trace_name + separator+"IQ"+startLineNum+"-"+endLineNum+trace_name+CfgExtension;
就是var path = trace_path + separator + trace_name + separator+"IQ"+startLineNum+"-"+endLineNum+".dat";
前者太繁琐 后者是我简化的
有没有人会啊
展开