2012-01-21 9 views
1

Android 2.1に新しいファイルを作成する方法があります。相対ディレクトリが存在しない場合は、作成することもできますか? は、このスニペットが動作しない原因と」、私は知ってますファイルとすべての親ディレクトリを作成する

static String separator = File.separator; 
public static final String DIRECTORYBIGLIETTI = "C:" + separator + "Users" + separator + "7-Spode" + separator + "Documents" + separator + "Android" + separator + "HUVWSZE"; ///sdcard/.SpodeApps/HUVWSZE/ 
public static final String FILEBIGLIETTI = DIRECTORYBIGLIETTI.concat(separator + "lista.txt"); 

File cartellainputoutput = new File(DIRECTORYBIGLIETTI); 
     if(!cartellainputoutput.exists()) 
     { 
      cartellainputoutput.mkdirs(); 
     } 
     File fileinputoutput = new File(FILEBIGLIETTI); 
     if(!fileinputoutput.exists()) 
      try { 
       fileinputoutput.createNewFile(); 
      } catch (IOException e) { 
       // TODO Auto-generated catch block 
       e.printStackTrace(); 
      } 

私はこのウェブサイトのグラフィックスをアップグレードするための管理者に求めることができますか? ;)

答えて

2

mkdirs()を使用してディレクトリを作成し、ファイルを作成する必要があります。

1

ただ、これを明確にするために、あなたは、Androidで(例えばC:\Users\7-Spode\Documents\Android\HUVWSZEなど)Windowsライクなファイルパスを使用することはできません、あなたのような/data/my.android.application/data_directory/fileまたは/sdcard/directory/file(Linuxのようなファイルパスを使用する必要があります。

また、あなたが使用する必要があります(外部記憶装置、例えばSDカード用)とgetExternalStorageDirectory()(内部ストレージ用)などgetFilesDir()ような方法は、これらのディレクトリを取得し、そこからあなただけの通常のFileオブジェクトを作成することができますし、そこからそれを扱う。

例を(内部でストレージ):

File dir = getFilesDir(); // Returns a directory exclusively for this app. 
File file = new File(dir, "directory/file"); 
file.mkdirs(); 
file.createNewFile(); 

getExternalStorageState()を使用して、外部ストレージを使用する場合は、常に外部ストレージが使用できないかどうかを確認する必要があります(SDカードが取り外されているか、端末にコンピュータに が接続されているかどうか)。

Androidで内蔵ストレージと外付けストレージを使用する方法の詳細については、this nifty articleを参照してください。

+1

これは正しいです。ちょうど答えを完了するために...グラフィックスは問題ありません! :) –

関連する問題