Я хочу записать в файл содержимое списка. Код легко понять, и иногда он помогает. Но в большинстве случаев это терпит неудачу. Вот что я пробовал до сих пор:
Я просматриваю список строк для создания StringBuilder или просто добавляю строку к StringBuilder. Затем я печатаю его на стандартном выводе, который работает, а затем печатаю его в указанном файле. Файл создается, но большую часть времени остается пустым даже после выполнения кода. Поскольку при создании FileOutputStream я указал «true», я надеялся, что текст просто добавится в конец файла. Но когда я запускаю код более одного раза, в файле ничего не остается.
Что-то мне не хватает?
Я хочу записать в файл содержимое списка. Код легко понять, и иногда он помогает. Но в большинстве случаев это терпит неудачу. Вот что я пробовал до сих пор: [code]public void finishTheTest(String outputFileName) throws FileNotFoundException{ StringBuilder testOutPutStringBuilder = new StringBuilder();
if(!isFieldSuccessFull) { testOutPutStringBuilder.append(System.getProperty("line.separator")); testOutPutStringBuilder.append(System.getProperty("line.separator")); testOutPutStringBuilder.append("Error for Task -> " + tm.getFieldHM(tm.getKey())); testOutPutStringBuilder.append(System.getProperty("line.separator")); testOutPutStringBuilder.append("*****************************************"); testOutPutStringBuilder.append(System.getProperty("line.separator")); for(String str : listFailure) { testOutPutStringBuilder.append(str); testOutPutStringBuilder.append(System.getProperty("line.separator")); } testOutPutStringBuilder.append("*****************************************"); testOutPutStringBuilder.append(System.getProperty("line.separator")); } if(!isCinematicSuccessFull) { testOutPutStringBuilder.append(System.getProperty("line.separator")); testOutPutStringBuilder.append(System.getProperty("line.separator")); testOutPutStringBuilder.append("Error for Repository -> " + tm.getFieldHM(tm.getKey())); testOutPutStringBuilder.append(System.getProperty("line.separator")); testOutPutStringBuilder.append("*****************************************"); testOutPutStringBuilder.append(System.getProperty("line.separator")); testOutPutStringBuilder.append("Cinematic error."); testOutPutStringBuilder.append(System.getProperty("line.separator")); testOutPutStringBuilder.append("*****************************************"); testOutPutStringBuilder.append(System.getProperty("line.separator")); } try(PrintStream ps = new PrintStream( new FileOutputStream(outputFileName, true))) { System.out.println(testOutPutStringBuilder); ps.println(testOutPutStringBuilder.toString()); } [/code] Я просматриваю список строк для создания StringBuilder или просто добавляю строку к StringBuilder. Затем я печатаю его на стандартном выводе, который работает, а затем печатаю его в указанном файле. Файл создается, но большую часть времени остается пустым даже после выполнения кода. Поскольку при создании FileOutputStream я указал «true», я надеялся, что текст просто добавится в конец файла. Но когда я запускаю код более одного раза, в файле ничего не остается. Что-то мне не хватает?