일부 처리를 수행하고 출력 파일을 생성하는 windows bat 파일을 호출하는 Java가 있습니다.
Process p = Runtime.getRuntime().exec("cmd /c "+filename);
이제 다음 프로그램에서 파일을 읽을 때. ( filexists()
파일의 존재 여부를 확인하는 기능입니다). 출력 파일에 한 줄만 포함됨
if ( filexists("output.txt") == true)
{ String FileLine;
FileInputStream fstream = new FileInputStream("output.txt");
BufferedReader br = new BufferedReader(new InputStreamReader(fstream));
FileLine = br.readLine();
fstream.close();
filein.close();
}
Variable FileLine은 시작 부분에 3 개의 정크 문자를 포함합니다. 나는 또한 프로그램에서 다른 파일을 거의 확인하지 않았고 런타임 기능으로 만들어진 사실을 제외 하고는이 문제가있는 파일이 없습니다.
9087
.
보시다시피 세 가지 정크 문자가 출력 파일에 표시됩니다. Notepad ++로 열었을 때 정크 문자를 볼 수 없습니다.
제안하십시오
이는 FileInputStream을 생성하는 동안 파일 인코딩을 언급하지 않았기 때문에 발생합니다. 파일이 UTF-8로 인코딩되었다고 가정하면 다음과 같이해야합니다.
new FileInputStream("output.txt, "UTF-8"));
파일 인코딩에 따라 인코딩 변경
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다