2012-02-07 50 views
0

在我的应用程序中有一些配置数据,例如ipaddress,portno,标题等。我想私下将这些数据保存在电话中。我决定写数据以下格式使用Android中的文件操作写入和读取配置数据

IPAddress=127.0.0.1 
Port=1234 
Title=MyNewApplication 

我很困惑与文件流。我也想更新数值而不使用temperory文件。请为此提供解决方案。

我试着用下面的代码

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); 
} 
} 
+0

我用这个和它的工作原理是通过库的名称:SharedPreferences PREF = mContext.getSharedPreferences(REPOSITORY_NAME,Context.MODE_PRIVATE); – 2014-07-06 02:23:24

回答

4

使用SharedPreferences来代替。 简单易用。

详情可以在这里找到。

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(); 
}} 
+0

运行应用程序时出现错误消息\“方法getSharedPreferences(String,int)未定义类型\”。我如何纠正它? – Riskhan 2012-02-07 09:17:59

+0

请稍微详细一点.. – Shaiful 2012-02-07 10:11:18

+0

请参阅编辑的问题,我包括代码 – Riskhan 2012-02-07 10:34:59