2016-09-06 10 views
0

外国辞書を作成しようとしていますが、txtファイルから辞書データを読み込もうとしています。それはこのような表現です。このファイルを読む方法は次のとおりです。テキストファイルから外国語を読むときにUnicodeが表示されない

private WordList(Context context) throws IOException { 
    mWordList = new ArrayList<>(); 
    AssetManager am = context.getAssets(); 
    InputStream is; 
    StringBuilder stringBuilder=new StringBuilder(""); 
    is = am.open("dat.txt"); 
    BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(is)); 
    while (bufferedReader.readLine()!=null){ 
    stringBuilder.append(bufferedReader.readLine()); 
     Log.d("String",stringBuilder.toString()); 
     StringTokenizer stringTokenizer = new StringTokenizer(stringBuilder.toString(),",;'"); 
     Word word = new Word(); 
     StringBuilder def = new StringBuilder(); 
     /* for (int i=0; i<stringTokenizer.countTokens();i++){ 
      if(i==0){ 
       word.setWrodName(stringTokenizer.nextToken()); 
      if (i==1){ 
       def.append(stringTokenizer.nextToken()); 
      } 
       if (i==2){ 
        def.append(", "); 
        def.append(stringTokenizer.nextToken()); 
      } 
       if (i==3){ 
        def.append(", "); 
        def.append(stringTokenizer.nextToken()); 
       } 
       word.setWordDefinition(def.toString()); 
      } 
      def.delete(0,def.length()); 

     }*/ 
     stringBuilder.delete(0,def.length()); 
     mWordList.add(word); 

    } 
    is.close(); 
    Log.d("String",stringBuilder.toString()); 

} 

行リサイクルビューでは、記号と数字のストロークが表示されます。

答えて

3

エンコードを渡すことはできますか?それに応じてUIの変更を行っ

// Change encoding to "UTF-8" or whatever you want. 
BufferedReader in = new BufferedReader(new InputStreamReader(stream, encoding)); 

やラテンこの方法を試してみてください

Reader in = new InputStreamReader(new FileInputStream("file"), "UTF-8")); 
0
  1. チェックデータベース符号化タイプUTF8、UTF16、.............
  2. 。 HTMLのように<%@ page contentType = "text/html; charset = UTF-8"%>
  3. dat.txtの文字エンコードをチェックしてください。
関連する問題