텍스트 파일에 텍스트가 나타나는 방식으로 간단한 텍스트 파일의 내용을 Java로 인쇄하려고합니다.자바에서 텍스트 파일의 정확한 내용 인쇄
인쇄물의 텍스트 파일과 내용이 같지만 형식이 동일하지 않습니다. 탭 및 줄 바꿈은 인쇄물에서 무시됩니다. 어떤 도움이라도 대단히 감사하겠습니다.
텍스트 파일에 텍스트가 나타나는 방식으로 간단한 텍스트 파일의 내용을 Java로 인쇄하려고합니다.자바에서 텍스트 파일의 정확한 내용 인쇄
인쇄물의 텍스트 파일과 내용이 같지만 형식이 동일하지 않습니다. 탭 및 줄 바꿈은 인쇄물에서 무시됩니다. 어떤 도움이라도 대단히 감사하겠습니다.
FileUtils.readFileToString(file)
은 (commons-io)해야하지만 큰 파일은 VM에 할당 된 전체 메모리를 차지할 수 있으므로주의해야합니다.
사용할 수있는 또 다른 사항은 IOUtils.copy(new FileInputStream(..), outputStream)
입니다. - 하나의 스트림 (이 경우 파일 스트림)에서 다른 스트림으로 모든 것을 전송합니다.
readFileToString을 사용하면 정확한 내용 (질문에서 묻는 내용)을 얻을 수 없습니다. 입력 파일에 마지막에 개행이 포함되어 있지 않으면 입력 파일에 추가됩니다. – gyorgyabraham
@ Joachim Sauer와 @bmargulies가 지적했듯이, 자세한 내용이 없으므로 우리는 문제가 무엇인지 정확하게 말할 수 없습니다.
하지만 코드를 대비하기 위해 다음은 인수로 제공된 파일을 읽은 다음 char-by-char을 읽습니다 (즉, 유니 코드 문자를 지원함). 이것이 목표를 달성하지 못한다면, 실패한 특정 (작은) 입력 예가 좋을 것입니다.
import java.io.*;
class printout {
public static void main (String[] args) {
if (args.length < 1) {
System.err.println ("Usage: printout <filename>");
System.exit (1);
}
File sourceFile = new File (args[0]);
FileReader fr = null;
try {
fr = new FileReader (sourceFile);
int inChar;
while ((inChar = fr.read()) != -1) {
System.out.printf ("%c", inChar);
}
} catch (IOException e) {
System.err.printf ("Failure while reading %s: %s\n",
args[0], e.getMessage());
e.printStackTrace();
} finally {
try {
if (fr != null) { fr.close(); }
} catch (IOException e) {
System.err.printf ("Error closing file reader: %s\n",
e.getMessage());
e.printStackTrace();
}
}
}
}
if (args.length ");
? –
1.) 바이트 단위로 읽지 않는 코드 2를 포맷하기 위해 HTML 태그를 사용하지 마십시오. 문자 단위로 읽습니다. –
@ Joachim Sauer : 바이트 단위가 아닌 char-by-char 읽기에 대한 내 오류를 지적 해 주셔서 감사합니다. 그에 따라 응답 텍스트를 수정했습니다. – RTBarnard
인쇄 할 때 this을 의미합니까? 그런 다음 모든 \ t를 예를 들어로 바꾸십시오. 4 공백과 \ n 새로운 drawString 호출.
또 다른 가능성은 JTextComponent 또는 JEditorPane을 채우고 인쇄하는 것입니다.
BufferedReader reader = new BufferedReader(
new InputStreamReader(new FileReader("file.txt"), "UTF-8");
reader.readLine(); etc
이 내 눈에 쉽게 당신이 항상
우리 방법을 보여 올바른 인코딩을 사용합니다 : 당신이 다음 RTBarnard + 사용의 답을 정상 SYS-밖으로 인쇄를 의미하는 경우
그것을 읽고 그것을 어떻게 인쇄 할 수 있습니까? 그렇지 않으면 우리는 단지 추측하고 있습니다. –
일부 코드를 게시하지 않으면 우리가 한 일을 추측 할 수 없습니다. – bmargulies