Android 讀取.txt文件出現亂碼的解決方案

来源:互联网 发布:网络系统安全管理制度 编辑:程序博客网 时间:2024/05/16 05:26
其實就一句話:保證你文件的編碼方式和解碼方式一致就可以了。

如果你僅僅是讀取外部的文件,那麼接下來這麼用:

try {      InputStream mInputStream = context.getAssets().open("text2.txt");     BufferedReader mReader = new BufferedReader(new InputStreamReader(                                                          mInputStream, "UTF-8"));      mReadResult = mReader.readLine();   } catch (IOException e) {   // TODO Auto-generated catch block   e.printStackTrace();  }


不過對於ANSI格式的文件現在還沒有找到正確讀取的辦法,摸索中...



如果你先寫入文件,再讀出文件,為了保證編碼的一致性,接下來這樣用:

public static String encodin = "UTF8"public static String encodout = "UTF8"static void writeOutput(String str) {try {                FileOutputStream fos = new FileOutputStream("test.txt");               Writer out = new OutputStreamWriter(fos, encodout);              out.write(str);                 out.close();} catch (IOException e) {e.printStackTrace();}}static String readInput() {StringBuffer buffer = new StringBuffer();try {                       FileInputStream fis = new FileInputStream("test.txt");                  InputStreamReader isr = new InputStreamReader(fis, encodin);                       Reader in = new BufferedReader(isr);                   int ch;                 while ((ch = in.read()) > -1) {                        buffer.append((char)ch);                      }in.close();return buffer.toString();} catch (IOException e) {e.printStackTrace();return null;}}
0 0
原创粉丝点击