µÚÈýÊÆß½²£ºAndroidÊý¾Ý´¢´æÖSD¿¨
°Á²»¿É³¤£¬Óû²»¿É×Ý£¬ÀÖ²»¿É¼«£¬Ö¾²»¿ÉÂú¡£¡ª¡ª κ áç
±¾½²ÄÚÈÝ£ºSD¿¨
ÉÏÒ»½²ÖÐÎÒÃÇѧϰÁËAndroidµÄÊý¾Ý´æ´¢²ÉÓÃFile,µ«ÊÇÕâÑùµÄÊý¾ÝÊÇ´æ´¢ÔÚÓ¦ÓóÌÐòÄڵ쬼´´æ´¢µÄÎļþ´óСÓÐÒ»¶¨ÒªÏÞÖÆµÄ£¬ÓÐʱºòÎÒÃÇÐèÒª´æ´¢¸ü´óµÄÎļþ£¬±ÈÈçµçÓ°µÈ£¬Õâ¾ÍÓõ½ÁËÎÒÃǵÄSDSard´æ´¢¿¨¡£
Ò»¡¢ÔÚAndroidϵͳÖУ¬ÎªÎÒÃÇÌá¹ÁËSDCardµÄÒ»ÐÏà¹Ø²Ù×÷£¬EnvironmentÀàΪÎÒÃÇÌá¹ÁËÒÔÏµļ¸¸ö·½·¨
vcmRlcj0="1" width="800" cellspacing="1" cellpadding="1">
| public static File getDataDirectory () |
»ñµÃAndroidϵÄdataÎļþ¼ÐµÄĿ¼ |
| public static File getDownloadCacheDirectory () |
»ñµÃAndroid Download/Cache ÄÚÈݵÄĿ¼ |
| public static File getExternalStorageDirectory () |
»ñµÃAndroidÍⲿ´æ´¢Æ÷¼´SDCardµÄĿ¼ |
| public static String getExternalStorageState () |
»ñµÃAndroidÍⲿ´æ´¢Æ÷µÄµ±Ç°×´Ì¬ |
| public static File getRootDirectory () |
»ñµÃAndroidϵÄrootÎļþ¼ÐµÄĿ¼ |
³£Óó£Á¿
| String MEDIA_MOUNTED |
µ±Ç°AndroidµÄÍⲿ´æ´¢Æ÷¿É¶Á¿Éд |
| String MEDIA_MOUNTED_READ_ONLY |
µ±Ç°AndroidµÄÍⲿ´æ´¢Æ÷Ö»¶Á |
¶þ¡¢ÎÒÃÇͨ¹ýÒ»¸öÀý×Ó¸ÐÊÜһϣ¬´úÂëµÄ½²½â¶¼Ð´ÔÚ×¢ÊÍÀïÁË
ÏÂÃæÊÇres/layout/activity_main.xml ²¼¾ÖÎļþ£º
ÔÚAndroidManifest.xmlÎļþÖÐ×¢²á
ÏÂÃæÊÇMainActivity.javaÖ÷½çÃæÎļþ£º
public class MainActivity extends Activity implements OnClickListener {private static final String FILE_NAME = "text.txt";private Button write;private Button read;EditText edit;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);findViews();}private void findViews() {edit = (EditText) findViewById(R.id.edit);write = (Button) findViewById(R.id.write);read = (Button) findViewById(R.id.read);write.setOnClickListener(this);read.setOnClickListener(this);}public void onClick(View v) {switch (v.getId()) {case R.id.write:// ÏÈÅжÏÊÇ·ñÓÐSDCardif (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {String content = edit.getText().toString();try {// »ñÈ¡SDcard·¾¶File dir = Environment.getExternalStorageDirectory();// »ñÈ¡SDcard·¾¶ÃûµÄ¾ø¶Ô·¾¶Ãû×Ö·û´¡£eg:/mnt/sdcard String sdcardPath = dir.getAbsolutePath();Toast.makeText(MainActivity.this,"Ŀ¼Ϊ£º" + sdcardPath, Toast.LENGTH_SHORT).show();File file = new File(dir, FILE_NAME);// ÒÔÖ¸¶¨Îļþ´´½¨RandomAccessFile¶ÔÏóRandomAccessFile raf = new RandomAccessFile(file, "rw");// ½«Îļþ¼Ç¼ָÕëÒÆ¶¯×îºóraf.seek(file.length());// Êä³öÎļþÄÚÈÝraf.write(content.getBytes());raf.close();} catch (Exception e) {}}break;case R.id.read:if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {// »ñÈ¡SDcard·¾¶StringBuilder sb = new StringBuilder();try {File dir = Environment.getExternalStorageDirectory();File file = new File(dir, FILE_NAME);InputStream inputStream = new FileInputStream(file);int len = 0;byte[] buffer = new byte[1024];while ((len = inputStream.read(buffer)) != -1) {sb.append(new String(buffer, 0, len));}Toast.makeText(MainActivity.this,"ƒÈÈÝΪ£º" + sb.toString(), Toast.LENGTH_SHORT).show();// ¹Ø±ÕÁ÷inputStream.close();} catch (Exception e) {}}}}}
ÏÂÃæÊÇÔËÐнá¹û£º
±¾½²µ½ÕâÀлл´ó¼Ò£¡