浏览 6461 次
锁定老帖子 主题:Android学习中,又遇到个不爽的bug
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2011-03-14
mksdcard 2048M e:\AndroidTool\sdcard.img;不能自动创建目录,AndroidTool 还要事先创建好目录才行。 我的代码,虽然大家都知道,还是晒晒。 import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.InputStream; import android.app.Activity; import android.os.Bundle; import android.os.Environment; import android.util.Log; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.TextView; import android.widget.Toast; import com.file.service.FileService; public class FileActivity extends Activity { private static String TAG = "FileActivity"; private EditText filenameText; private EditText filecontentText; private TextView showMsgView; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); filenameText = (EditText) this.findViewById(R.id.filename); filecontentText = (EditText) this.findViewById(R.id.filecontent); showMsgView = (TextView) this.findViewById(R.id.showMsg); Button button = (Button) this.findViewById(R.id.save); Button showBtn = (Button) this.findViewById(R.id.show); button.setOnClickListener(listener); showBtn.setOnClickListener(listener); } private View.OnClickListener listener = new View.OnClickListener() { @Override public void onClick(View v) { Button btn = (Button) v; String filename = filenameText.getText().toString(); // File file = new File("/sdcard/"+filename); 效果同下 File file = new File(Environment.getExternalStorageDirectory(), filename); switch (btn.getId()) { case R.id.save: String content = filecontentText.getText().toString(); // sdcard存在,且可以读写 if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){ int resid = R.string.success; try { /*OutputStream outStream = FileActivity.this.openFileOutput( filename, Context.MODE_WORLD_READABLE+Context.MODE_WORLD_WRITEABLE);*/ FileOutputStream outStream = new FileOutputStream(file); FileService.save(outStream, content); } catch (Exception e) { Log.e(TAG, e.toString()); resid = R.string.error; } Toast.makeText(FileActivity.this, resid, Toast.LENGTH_LONG).show(); } else { Toast.makeText(FileActivity.this, "SDCard不存在或写保护", Toast.LENGTH_LONG).show(); } break; case R.id.show: try { InputStream inStream = new FileInputStream(file);//FileActivity.this.openFileInput(filename); showMsgView.setText(FileService.read(inStream)); } catch (Exception e) { Log.e(TAG, e.toString()); Toast.makeText(FileActivity.this, "读取文件内容失败", Toast.LENGTH_LONG).show(); } break; } } }; } 创建并读取SDCard中文件内容。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2011-03-16
是否添加了相关权限?
<user-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/> 在SD卡中删除与创建文件权限 |
|
返回顶楼 | |
发表时间:2011-03-16
加了,是在dos下创建的,难道不行??
|
|
返回顶楼 | |
发表时间:2011-03-17
java苹果+番茄 写道 加了,是在dos下创建的,难道不行??
要在AndroidManifest.xml文件中添加SDCard读写权限。 |
|
返回顶楼 | |
发表时间:2011-03-17
不需要添加权限吧
刚写了个例子 |
|
返回顶楼 | |
发表时间:2011-03-17
权限是必须的!
只要是骚微不合常理的都要,你懂的…… |
|
返回顶楼 | |
发表时间:2011-03-20
用word编辑可以么?word编辑之后是用什么格式保存的?
lz交代一下呀 |
|
返回顶楼 | |
发表时间:2011-03-22
Log cat 一般就可以知道是什么原因了
|
|
返回顶楼 | |