我有一个简单的 rest get 动词,它读取一个 csv 文件并输出一些数据。通过 System.out.println 将数据发送到控制台效果很好。
- 代码:“英文名称”
- 广告:安道尔
- AE:“阿拉伯联合酋长国”
- AF:阿富汗
- AG:“安提瓜和巴布达”
- AI:安圭拉
- AL:阿尔巴尼亚
现在,当我通过休息调用将相同的数据输出到浏览器时,我得到以下信息。
- [代码:“英文名称”
- , AD:安道尔
- , AE:“阿拉伯联合酋长国”
- , AF:阿富汗
- , AG:"安提瓜和巴布达"
- , AI:安圭拉
- , AL:阿尔巴尼亚
- ]
多余的字符从哪里来?这是我的课。
@GET
@Produces(MediaType.TEXT_PLAIN)
public String getAllCountriesAndCodes() {
InputStream inputStream = getClass().getClassLoader().getResourceAsStream("countryandcode.csv");
String line;
String cvsSplitBy = ",";
List<String> myList = new ArrayList<>();
BufferedReader bufferedReader = null;
try {
bufferedReader = new BufferedReader(new InputStreamReader(inputStream));
while ((line = bufferedReader.readLine()) != null) {
String[] country = line.split(cvsSplitBy);
myList.add(country[0] + ":" + country[1] + System.getProperty("line.separator"));
System.out.println(country[0] + ":" + country[1]);
}
} catch (IOException e) {
e.printStackTrace();
} finally {
if (bufferedReader != null) {
try {
bufferedReader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
return String.valueOf(myList);
}
我正在使用 Java 7、Jersey 2.0 和 IntelliJ 12,如果这有所作为的话。当我快速观看 myList 时,数据看起来是正确的。其他东西正在格式化吗?我将它打包在一个 war 文件中并将其部署到 Tomcat 7。
谢谢!