2017-04-26 20 views
0

exifファイルにキリル記号を追加するにはどうすればよいですか? 私のコードは "?"というシンボルを追加しました。 このコード:Android exiファイルにキリル記号を追加する方法

String userComment = "АБВГДЕЁЖЗИЙКЛСНОПРСТУФХЦЧШЩЪЫЬЭЮЯ"; 
exifInterface.setAttribute("UserComment", userComment); 
exifInterface.saveAttributes(); 

または

String userComment = "АБВГДЕЁЖЗИЙКЛСНОПРСТУФХЦЧШЩЪЫЬЭЮЯ"; 
exifInterface.setAttribute("UserComment", new String(userComment.getBytes(), "UTF-8")); 
exifInterface.saveAttributes(); 
+0

可能かどうかわかりません。キリル文字を使ったexif情報付きのjpgファイルを見たことがありますか?もしそうなら、それをインターネットに置き、それにURLを書いてください。 – greenapps

+0

どのように結果を確認しますか?あなたのアプリや外部アプリで? – greenapps

+0

アプリケーションと外部アプリケーションで結果を確認しました。 – user1854307

答えて

0

はExifInterfaceクラスは、このキリル文字をサポートしていないと思います。

Iは

byte [] bytes1 = exifInterface.getAttribute("UserComment").getBytes(); 
    byte [] bytes2 = exifInterface.getAttribute("UserComment").getBytes("utf-8"); 
// byte [] bytes3 = exifInterface.getAttribute("UserComment").getBytes("utf-16"); 
// byte [] bytes3 = exifInterface.getAttribute("UserComment").getBytes("ISO-8859-1"); 
    byte [] bytes3 = exifInterface.getAttribute("UserComment").getBytes("windows-1252"); 

とそのタグからバイトを取得しようとし、次に16進数のバイトを表示します。彼らはすべてゴミだった。

33文字は66バイトでした。どのエンコーディングが使用されているのかわかりません。

あなたのアルファベット文字列のバイトと比較したいと思いました。

Andoid 7のコンパイルも試しましたが、すべて同じです。

私は;-)をあきらめます。

+0

あなたはUserCommentにテキストを書き込もうとしましたか? – user1854307

+0

いいえ、私はexifを読むことができない場合、私はexifを書き込もうとしません。どのように私は書き込みをチェックするだろうか?外部アプリのみ。 – greenapps

+0

おそらく自分で記録したデータを読むことができます。 – user1854307

関連する問題