从文件填充ArrayList,不包括格式信息和反斜杠

时间:2015-05-19 03:38:32

标签: java arraylist

首先,这不是家庭作业。我刚刚从高中毕业,我想在大学之前做一些个人项目。我一直在尝试使用文档中的元素填充ArrayList。该文件如下:

ITEM1

ITEM2

项目3

...

itemN

在我自己多次失败之后,我尝试了来自这个网站的不同解决方案。最近,这个让我最接近我想要的东西:

 public static void main(String[] args) throws IOException {
    List<String> names = new ArrayList<String>();
    BufferedReader reader = null;
    try {
        reader = new BufferedReader(new FileReader("/Users/MyName/Desktop/names.txt"));
        String line = null;
        while ((line = reader.readLine()) != null) {
            names.add(line);
        }
    } finally {
        reader.close();
    }
    for(int i = 0; i<names.size(); i++){
        System.out.println(names.get(i));
    }
    //String[] array = (String[]) names.toArray(); Not necessary that it is in an array
}

唯一的问题是,这会在控制台中返回一些相当丑陋的东西:

{\rtf1\ansi\ansicpg1252\cocoartf1347\cocoasubrtf570
{\fonttbl\f0\froman\fcharset0 Times-Roman;}
{\colortbl;\red255\green255\blue255;}
\margl1440\margr1440\vieww10800\viewh8400\viewkind0
\pard\tx577\tx1155\tx1733\tx2311\tx2889\tx3467\tx4045\tx4623\tx5201\tx5779\tx6357\tx6935\tx7513\tx8091\tx8669\tx9247\tx9825\tx10403\tx10981\tx11559\tx12137\tx12715\tx13293\tx13871\tx14449\tx15027\tx15605\tx16183\tx16761\tx17339\tx17917\tx18495\tx19072\tx19650\tx20228\tx20806\tx21384\tx21962\tx22540\tx23118\tx23696\tx24274\tx24852\tx25430\tx26008\tx26586\tx27164\tx27742\tx28320\tx28898\tx29476\tx30054\tx30632\tx31210\tx31788\tx32366\tx32944\tx33522\tx34100\tx34678\tx35256\tx35834\tx36412\tx36990\tx37567\tx38145\tx38723\tx39301\tx39879\tx40457\tx41035\tx41613\tx42191\tx42769\tx43347\tx43925\tx44503\tx45081\tx45659\tx46237\tx46815\tx47393\tx47971\tx48549\tx49127\tx49705\tx50283\tx50861\tx51439\tx52017\tx52595\tx53173\tx53751\tx54329\tx54907\tx55485\tx56062\tx56640\tx57218\tx57796\li577\fi-578

\f0\fs24 \cf0 \CocoaLigature0 item1\
item2\
item3\
...
itemN\
}

如何让它从文件中读取但不包含所有反斜杠和格式信息?

2 个答案:

答案 0 :(得分:3)

你只需要将文件真正保存为文本文件。您的文件目前看起来像RTF文件。打开页面应用程序并打开该文件。转到文件...导出到...纯文本...并将其保存到新文件中。

答案 1 :(得分:0)

您的names.txt文件似乎已保存为RTF(RTF格式)。确保将其转换为纯文本。