我在包含一个长json字符串的项目的assets文件夹中有一个'diagnosis.txt'文件,当我尝试获取该字符串时,它会在字符串的开头附加垃圾并在中间添加'\' JSON。任何人都可以告诉如何删除这个垃圾文本吗?
垃圾:
{\ RTF1 \ ANSI \ ansicpg1252 \ cocoartf1343 \ cocoasubrtf140 {\ fonttbl \ f0 \ fmodern \ fcharset0 Courier;} {\ colortbl; \ red255 \ green255 \ blue255; \ red0 \ green0 \ blue0;} \ margl1440 \ margr1440 \ vieww10800 \ viewh8400 \ viewkind0 \ deftab720 \ PARD \ pardeftab720 \ f0 \ fs24 \ cf2 \ expnd0 \ expndtw0 \ kerning0 \ outl0 \ strokewidth0 \ strokec2 [{“code”:“A000”,“description”:“由于霍乱弧菌01霍乱,生物变种霍乱”},{“代码”:“A001”,“描述”:“霍乱由于霍乱弧菌01,biovar eltor“},{”代码“:”A009“,”描述“:”霍乱,未说明“},{”代码“:”A0100“,”描述“:”伤寒,未说明“}} }
public static String loadJSONFromAsset(Context context) throws IOException {
String json = null;
try {
InputStream is = context.getAssets().open("diagnosis.txt");
int size = is.available();
byte[] buffer = new byte[size];
is.read(buffer);
is.close();
json = new String(buffer, "UTF-8");
} catch (IOException ex) {
ex.printStackTrace();
return null;
}
return json;
}
答案 0 :(得分:1)
该数据存在于文件本身中,您只是在文本编辑器中看不到它。
使用其他文本编辑器,切换到纯文本,清理文件,您的问题将得到解决。
您的代码运行正常。
以下是如何在TextEdit中切换或转换为纯文本的示例: http://www.tekrevue.com/tip/textedit-plain-text-mode/