1

我确信对此有一个简单的答案,但我是新手,似乎无法弄清楚这一点。

我需要将数据保存到文本文件中。我有所有的代码来做到这一点,但路径和文件名现在是硬编码的。我有一个 EditText 字段,用户在其中输入文件名,然后点击一个按钮。我希望它根据用户输入的内容创建路径和文件名。

基本上是“/sdcard/”+Whateveruserentered.txt的预定路径

4

1 回答 1

1

好的,这是一个简单的答案,

假设您在 EditText 中输入了“myPath/myfile.txt”,

首先,您需要创建“myPath”文件夹(我假设您也在路径中提供文件夹名称)。

String fullPath = myEditText.getText().toString().trim();
String folderPath = fullPath.substring ( 0, fullPath.indexOf ( "/" ) );
String fileName = fullPath.substring ( fullPath.indexOf ( "/" ) + 1 );

// First Create folder by coding, 

File folder = new File(Environment.getExternalStorageDirectory().toString() + folderPath );
if (!folder.exists()) 
{
      folder.mkdirs();
}

// Note: your path must not have recursive folders like myPath1/myPath2/myFile.txt, otherwise you need to create folder in 2 steps.

// Now creating file
File file = new File(Environment.getExternalStorageDirectory().toString() + folderPath + fileName );

if ( !file.exists() )
{
    success = file.createFile();
}

// Now your file is created, you can do writing code now onwards.
于 2012-09-14T02:15:08.487 回答