내 하드 드라이브에서 파일을 읽거나 쓸 때 XPCOM을 사용합니다 (Java는 FF16,17,18에서 더 이상 지원되지 않으므로 +이 파일을 사용해야합니다). FireFox 확장 프로그램에서 사용합니다 (iMacros를 사용합니다). 이 문서에서는 click이 예제를 발견했습니다.자바 스크립트 쓰기 파일 덮어 쓰기 없음
var string = '\u5909\u63db\u30c6\u30b9\u30c8';
file.initWithPath('C:\\temp\\temp.txt');
file.create(file.NORMAL_FILE_TYPE, 0666);
var charset = 'EUC-JP';
var fileStream = Components
.classes['@mozilla.org/network/file-output-stream;1']
.createInstance(Components.interfaces.nsIFileOutputStream);
fileStream.init(file, 2, 0x200, false);
var converterStream = Components
.classes['@mozilla.org/intl/converter-output-stream;1']
.createInstance(Components.interfaces.nsIConverterOutputStream);
converterStream.init(fileStream, charset, string.length,
Components.interfaces.nsIConverterInputStream.DEFAULT_REPLACEMENT_CHARACTER);
converterStream.writeString(string);
converterStream.close();
fileStream.close();
그래서이 코드는 다음을 수행합니다. 파일이 존재하지 않으면 파일을 생성하고 파일을 저장합니다. 그러나 파일이 존재하면 오류를 리턴합니다. 코드의 해당 부분 (및 파일)에 주석을 달면 이전 데이터를 덮어 쓰고 새 데이터를 넣을 것입니다.
파일을 만들려면이 코드가 필요합니다. 오류가 발생하지 않고 덮어 쓰지 않고 새 줄에 데이터를 저장하면됩니다.
이렇게하면됩니다.
전 :
data11, data12, data13
data21, data22, data23
후 :
data11, data12, data13
data21, data22, data23
data31, data32, data33
data41, data42, data43
직장에 좋습니다. 곧 어떻게 작동하는지보고 할 것입니다. OK는 작동하고 썼지 만별로는 아닙니다. 여전히 기존 파일을 만들려고 할 때 오류가 발생하며 데이터가 기존 텍스트의 같은 줄에 작성된 새 줄로 이동되지 않습니다. converterStream.writeString ("\ n");으로 해결할 수 있습니다. 본문을 쓰기 전에 파일을 만드는 오류를 해결하는 방법? – macroscripts