android开发中如何通过点击按钮将EditText中的内容保存到SD卡的一个文件中?

如题,求代码,新手菜鸟求教。
2025-04-05 10:52:48
推荐回答(2个)
回答1:

package com.save;

import java.io.DataOutputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.FileWriter;
import java.io.RandomAccessFile;

import android.app.Activity;
import android.os.Bundle;
import android.os.Environment;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;

public class MainActivity extends Activity {
private EditText editText1;
private Button button1;
String filePath = Environment.getExternalStorageDirectory() + "/save/";
String fileName = "save.txt";

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

initView();
}

private void initView() {
editText1 = (EditText) findViewById(R.id.editText1);
button1 = (Button) findViewById(R.id.button1);
button1.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
writeTxtToFile(editText1.getText().toString().trim(), filePath, fileName);
}
});
}

// 将字符串写入到文本文件中
public void writeTxtToFile(String strcontent, String filePath, String fileName) {
// 生成文件夹之后,再生成文件,不然会出错
makeFilePath(filePath, fileName);

String strFilePath = filePath + fileName;
// 每次写入时,都换行写
String strContent = strcontent + "\r\n";
try {
File file = new File(strFilePath);
if (!file.exists()) {
Log.d("TestFile", "Create the file:" + strFilePath);
file.getParentFile().mkdirs();
file.createNewFile();
}
RandomAccessFile raf = new RandomAccessFile(file, "rwd");
raf.seek(file.length());
raf.write(strContent.getBytes());
raf.close();

} catch (Exception e) {
e.printStackTrace();
}
}

// 生成文件
public File makeFilePath(String filePath, String fileName) {
File file = null;
makeRootDirectory(filePath);
try {
file = new File(filePath + fileName);
if (!file.exists()) {
file.createNewFile();
}
} catch (Exception e) {
e.printStackTrace();
}
return file;
}

// 生成文件夹
public static void makeRootDirectory(String filePath) {
File file = null;
try {
file = new File(filePath);
if (!file.exists()) {
file.mkdir();
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

添加这个权限 



xml文件自己写吧,太简单了

回答2:

用电脑就可以了