编写和Android中使用文件操作读取配置数据 [英] write and read configuration data using File operation in Android

查看:141
本文介绍了编写和Android中使用文件操作读取配置数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在我的应用程序有一些配置数据,如ip地址,PORTNO,标题等。我想在手机保持这些数据的私有。我决定写如下格式的数据。

  ip地址127.0.0.1 =
端口= 1234
标题= MyNewApplication

我很困惑与文件流。我也想不使用temperory文件以更新值。请回复此提供了解决方案。

我试着用低于code

 公共类MTX {公共静态最后弦乐preFS_NAME =我的prefsFile公共静态无效ConfWrite(字符串类型,字符串值){
    共享preferences设置= preferenceManager.getDefaultShared preferences(NULL);
    共享preferences.Editor编辑= settings.edit();
    editor.putString(ip地址,127.0.0.1);
    editor.putInt(港,1234);
    editor.putString(标题,MyNewApplication);    //提交的编辑!
    editor.commit();
}公共静态无效ConfRead(字符串类型,字符串值){        共享preferences设置= preferenceManager.getDefaultShared preferences(NULL);
        串ip地址= settings.getString(ip地址,);
        INT端口= settings.getInt(端口,0);
        字符串title = settings.getString(标题,);        Log.e(,标题);
}
}


解决方案

使用共享preferences 来代替。
简单易用。

详细信息可以在这里找到。

http://developer.android.com/guide/topics/数据/数据​​storage.html

 公共类计算器扩展活动{
公共静态最后弦乐preFS_NAME =我的prefsFile@覆盖
保护无效的onCreate(捆绑状态){
   super.onCreate(州);
   。 。 。   //恢复preferences
   共享preferences设置= getShared preferences(preFS_NAME,0);
   串ip地址= settings.getString(ip地址,);
   INT端口= settings.getInt(端口,0);
   INT TITLE = settings.getString(标题,);
}@覆盖
保护无效的onStop(){
   super.onStop();  //我们需要一个编辑器对象,以preference变化。
  //所有的对象都是从android.context.Context
  共享preferences设置= getShared preferences(preFS_NAME,0);
  共享preferences.Editor编辑= settings.edit();
  editor.putString(ip地址,127.0.0.1);
  editor.putInt(港,1234);
  editor.putString(标题,MyNewApplication);  //提交的编辑!
  editor.commit();
}}

In my application there are some configuration data, such as ipaddress, portno, title and etc. I want to keep these data in phone privately. I decided to write data in below format

IPAddress=127.0.0.1
Port=1234
Title=MyNewApplication

i am confused with file streams. I also want to update values without using a temperory file. Please provide a solution to this.

I tried with below code

public class Mtx {

public static final String PREFS_NAME = "MyPrefsFile";

public static void ConfWrite(String type, String value) {
    SharedPreferences settings = PreferenceManager.getDefaultSharedPreferences(null);
    SharedPreferences.Editor editor = settings.edit();
    editor.putString("IPAddress", "127.0.0.1");
    editor.putInt("port", 1234);
    editor.putString("Title", "MyNewApplication");

    // Commit the edits!
    editor.commit();
}

public static void ConfRead( String type, String value ) {

        SharedPreferences settings = PreferenceManager.getDefaultSharedPreferences(null);
        String ipAddress = settings.getString("IPAddress", "");
        int port = settings.getInt("port", 0);
        String title = settings.getString("Title", "");

        Log.e("", title);
}
}

解决方案

Use SharedPreferences instead. Simple to use.

Details can be found here.

http://developer.android.com/guide/topics/data/data-storage.html

public class Calc extends Activity {
public static final String PREFS_NAME = "MyPrefsFile";

@Override
protected void onCreate(Bundle state){
   super.onCreate(state);
   . . .

   // Restore preferences
   SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
   String ipAddress = settings.getString("IPAddress", "");
   int port = settings.getInt("port", 0);
   int title = settings.getString("Title", "");
}

@Override
protected void onStop(){
   super.onStop();

  // We need an Editor object to make preference changes.
  // All objects are from android.context.Context
  SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
  SharedPreferences.Editor editor = settings.edit();
  editor.putString("IPAddress", "127.0.0.1");
  editor.putInt("port", 1234);
  editor.putString("Title", "MyNewApplication");

  // Commit the edits!
  editor.commit();
}}

这篇关于编写和Android中使用文件操作读取配置数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆