yahoo知恵袋の方でも質問させてもらってますが、こちらでも質問させていただきます。 Eclipse IndigoのEclipse IDE for Java DevelopersでAndroid2.3.3をターゲットに作成しています。 SDカードに保存されているtxtファイルからstring型としてデータを1行ずつ読み取り、int型に変換して処理を行った後、TextViewに格納するために再びstring型に変換しようとしているのですが開始直後にエラーで停止し、うまくいきません。 変換の仕方などいろいろ試しているのですが、str2をを以下のように変更したところ正常に「2234」が出てくるので、ファイルから読み込んだ数値の変換がおかしいのかなと思っています。 string str2 = "1234"; ファイルからの読み込みは正常にできており、以下のようにセットすればきちんと「5」が出てきます。 m_text01.setText(List[0]); どう対処すればいいのかわからず途方に暮れていますのでよかったら回答お願いします。 以下はソースコードです。 ----------------------------------- javaファイルの内容(抜粋) ----------------------------------- private String List[] = {"","","","","",""}; private TextView m_text01; public void onCreate(Bundle savedInstanceState) { m_text01 = (TextView)findViewById(R.id.TextView01); String str = ""; int i = 0; File directory = Environment.getExternalStorageDirectory(); String readFilePath = directory.getAbsolutePath() + "/アプリ名/data.txt"; BufferedReader reader = null; try { reader = new BufferedReader(new FileReader(readFilePath)); str = reader.readLine(); while (str != null) { List[i] = str; i++; str = reader.readLine(); } } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } // ここでstring型で読み込まれたデータをint型に変換する String str2 = List[0] int num = Integer.valueOf(str2).intValue(); // int型に変換したデータを用いて演算を行う // (1000を足すことに意味はないが計算ができたか確かめるため) num = num+1000; // 計算が終わったらデータをstring型に戻す String str3 =String.valueOf(num); // TextViewにセット m_text01.setText(str3); } ----------------------------------- ---------------- data.txtの中身 ---------------- 5 4 3 2 1 0 ---------------
↧