2012-02-07 48 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