मैं एंड्रॉइड के लिए नया हूं, और मुझे एक समस्या है जब मैं एक फ़ाइल को आंतरिक स्टोरेज में सहेजने की कोशिश कर रहा हूं, नया उदाहरण मेरे एसडीके पर काम करता है, लेकिन काम नहीं करता है मेरा फ़ोन।आंतरिक स्टोरेज एंड्रॉइड में सहेजने वाली फ़ाइल
/data/data/com.example.key/files/text/(my_title)
धन्यवाद: -
मैं एंड्रॉयड 2.1 माध्यम से के साथ एक सोनी एरिक्सन XPERIA में उदाहरण डे को चलाने के लिए, कोशिश कर रहा हूँ ... log.i मुझे अगली पंक्ति देता है।
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.new_text);
file = (EditText) findViewById(R.id.title_new);
entry = (EditText) findViewById(R.id.entry_new);
btn = (Button) findViewById(R.id.save_new);
btn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
File myDir = getFilesDir();
NEWFILENAME = file.getText().toString();
if (NEWFILENAME.contentEquals("")){
NEWFILENAME = "UNTITLED";
}
NEWENTRY = entry.getText().toString();
try {
File file_new = new File(myDir+"/text/", NEWFILENAME);
file_new.createNewFile();
Log.i("file", file_new.toString());
if (file_new.mkdirs()) {
FileOutputStream fos = new FileOutputStream(file_new);
fos.write(NEWENTRY.getBytes());
fos.flush();
fos.close();
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Intent textPass = new Intent("com.example.TEXTMENU");
startActivity(textPass);
}
});
}
//That's for creating... then in other activity i'm reading
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.text_menu);
btn = (Button) findViewById(R.id.newNote);
listfinal = (ListView) findViewById(R.id.listView);
btn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent textPass = new Intent("com.example.TEXTNEW");
startActivity(textPass);
}
});
listfinal.setOnItemClickListener(this);
File fileWithinMyDir = getApplicationContext().getFilesDir();
loadbtn = (Button) findViewById(R.id.loadList);
loadbtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
File myDir = getFilesDir();
File dir = new File(myDir + "/text/");
String[] files = dir.list();
//String[] files = getApplicationContext().fileList();
List<String> list = new ArrayList<String>();
for (int i =0; i < files.length; i++){
list.add(files[i]);
}
ArrayAdapter<String> ad = new ArrayAdapter<String>(TextMenu.this, android.R.layout.simple_list_item_1,
android.R.id.text1, list);
listfinal.setAdapter(ad);
}
});
}
मेरी एंड्रॉयड manifiest में
मैं अनुमतियाँ
<uses-sdk
android:minSdkVersion="5"
android:targetSdkVersion="15" />
<uses-permission android:name="android.hardware.camera" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_INTERNAL_STORAGE" />
क्या आप लॉगकैट प्रदान कर सकते हैं? – 323go
निर्देशिका बनाने का प्रयास करें जहां आप अपनी फ़ाइल को 'File.mkdirs()' कॉल – vasart