Android 如何使用SharedReferences读取SD卡中的配置文件?
我找到了从配置文件读取值的代码,但我无法从SD卡读取文件。我试着这样做:Android 如何使用SharedReferences读取SD卡中的配置文件?,android,sharedpreferences,Android,Sharedpreferences,我找到了从配置文件读取值的代码,但我无法从SD卡读取文件。我试着这样做: static File GPSCfgFile = new File(Environment.getExternalStorageDirectory() + "/Config/GPSLogService.cfg"); public static final String PREFS_NAME = String.valueOf(GPSCfgFile); 当我启动服务时,它意外停止。这是在日志中
static File GPSCfgFile = new File(Environment.getExternalStorageDirectory()
+ "/Config/GPSLogService.cfg");
public static final String PREFS_NAME = String.valueOf(GPSCfgFile);
当我启动服务时,它意外停止。这是在日志中:
FATAL EXCEPTION: main
GPSLogService.cfg.xml contains a path separator
如何从SD卡读取该文件?您可以使用
String.valueOf()方法获取文件:
如果您使用的是XML配置文件,您可以查看以下链接以了解如何操作:
如果您使用的是纯文本文件,可以在此处查看:
读取配置文件时,必须将每个值保存在单个SharedReferences
:
SharedPreferences prefs = getSharedPreferences(ConstantsUtils.PREFERENCES,
Context.MODE_PRIVATE);
SharedPreferences.Editor editor = prefs.edit();
editor.putString("IPAddress", "Tag value" );
editor.commit();
我认为您无法读取带有String.valueOf()
的文件。谢谢。如何将此SharedReferences转换为long并在其他方法中使用?我被困在这里了。您可以使用您在问题SharedReferences settings=GetSharedReferences(PREFS_NAME,0)中编写时保存的首选项;String ipAddress=settings.getString(“ipAddress”,”);
SharedPreferences prefs = getSharedPreferences(ConstantsUtils.PREFERENCES,
Context.MODE_PRIVATE);
SharedPreferences.Editor editor = prefs.edit();
editor.putString("IPAddress", "Tag value" );
editor.commit();