(SDカードに書き込みできず、マウントOFFに気づくのに小一時間゜・(ノД`)・゜・)
マニフェストファイルにSD カードのコンテンツの変更/削除の権限を与える設定を行います。
※SDカードから読み込むだけなら必要ありません。
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
SDカードは端末によりパスが異なるのでgetExternalStorageDirectory()メソッドでパスを取得します。
String sdPath = Environment.getExternalStorageDirectory().getPath();
あとは普通のファイル入出力と同じです。
SDカードに書き込み
public void button1Click(View view) { try { //SDカードフォルダのパス String sdPath = Environment.getExternalStorageDirectory().getPath(); //作成するファイル名 String fileName = "/Hello.txt"; //書き込み BufferedWriter bw = null; try { FileWriter fw = new FileWriter(sdPath + fileName); bw = new BufferedWriter(fw); bw.write("ハロー"); } finally { bw.close(); } } catch (Exception e) { e.printStackTrace(); } }
SDカードに書き込み
public void button2Click(View view) { try { //SDカードフォルダのパス String sdPath = Environment.getExternalStorageDirectory().getPath(); //読み込むァイル名 String fileName = "/Hello.txt"; //読み込み BufferedReader br = null; try { FileReader fr = new FileReader(sdPath + fileName); br = new BufferedReader(fr); StringBuilder sb = new StringBuilder(); String str; while((str = br.readLine()) != null){ sb.append(str +"\r\n"); } Toast.makeText(this, sb.toString(), Toast.LENGTH_LONG).show(); } finally { br.close(); } }catch (Exception e){ e.printStackTrace(); } }
0 件のコメント:
コメントを投稿