我设置了一个FileReader,并打开了一个文件来读取,但它给了我一个奇怪的输出,我似乎无法解决:
import java.io.BufferedReader; import java.io.FileReader; public class FileReading { public static void main(String [] args) throws Exception { FileReader file = new FileReader("/Users/danielpersonius/Desktop/test.rtf"); BufferedReader reader = new BufferedReader(file); String text = ""; String line = reader.readLine(); while (line != null){ // So here, we want to print until it reaches 'null' text += line; line = reader.readLine(); } System.out.println(text); } }
这是我的输出:
{\ rtf1\ansi\ansicpg1252\cocoartf1265\cocoasubrtf200 {\ fonttbl\f0\fswiss\fcharset0 Helvetica;} {\ colortbl;\red255\green255\blue255;}\margl1440\margr1440\vieww10800\viewh8400\viewkind0\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\pardirnatural\f0\fs24\cf0 TEST}
TEST是rtf文件所说的,但是如何摆脱我显然不想要的所有其他东西呢?我是OS X Mavericks的IMac
问题是您可能正在TextEdit中创建文件.TextEdit不会将文件另存为原始文本文件.相反,它将其保存为嵌入格式化命令的RTF(富文本文件)格式.您需要使用可以创建ASCII文本文件的文本编辑器.
有关RTF的更多信息.