我按照JAVA的方法、按照网上查询的方法、按照书上的方法,写了三个版本了!!但都不行!!已经折腾两天了!!请问到底是怎么回事呢??!!谢谢了!!
(我没有SD卡,我是直接写在手机里的。我已经用Environment.getDataDirectory().toString();找到了路径,可即便往那个路径里写也不行。)
package com.example.fcafileio;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.OutputStreamWriter;
import java.io.PrintStream;
import java.io.PrintWriter;
import java.util.Scanner;
import org.apache.http.util.EncodingUtils;
import android.os.Bundle;
import android.os.Environment;
import android.widget.TextView;
import android.app.Activity;
import android.content.Context;
public class FCAFILEIO extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_fcafileio);
String PATH = Environment.getDataDirectory().toString();
writefile3("fcafca.bin", "sadfasdfasd");
// final TextView txtfca = (TextView) findViewById(R.id.fcatext);
}
private void writefile1(File filefca, String content) {
try {
PrintWriter outputfca = new PrintWriter(filefca);
outputfca.print(content);
outputfca.flush();
outputfca.close();
} catch (Exception e) {
e.printStackTrace();
}
}
private void writefile2(File filefca, String content) {
try {
FileOutputStream outputfca = new FileOutputStream(filefca);
byte[] bytes = content.getBytes();
outputfca.write(bytes);
outputfca.flush();
outputfca.close();
} catch (Exception e) {
e.printStackTrace();
}
}
private void writefile3(String fileName, String message) {
try {
FileOutputStream fos = openFileOutput(fileName, MODE_APPEND);
PrintStream ps = new PrintStream(fos);
ps.println(message);
fos.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
------解决思路----------------------
权限加了吗?
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
------解决思路----------------------
我用你的writefile3 这个函数是过了,是可以写成功的,你自己看看是不是哪里还有问题,另外因为你写的不是外部存储,所以
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
这两个权限不需要加应该也能写成功