0

我对 Windows 8 上的本地存储有疑问。

我想存储一个股票代码的字符串数组。在 Windows 8 上执行此类操作的最佳方法是什么?

浏览一下,有些人建议将数组中的每个字符串存储到文本文件中的新行中,从本地存储中保存和检索。

如果是这样,我将如何实现这一目标?有更好的选择吗?我应该走sqlite的道路吗?

4

3 回答 3

2

这是一个示例演示如何将集合保存到本地存储,请查看:http ://code.msdn.microsoft.com/windowsapps/CSWinStoreAppSaveCollection-bed5d6e6

于 2013-01-31T02:48:27.273 回答
1

我建议使用独立存储来存储应用程序值,可能是序列化的 JSON、对象等。下面是一个代码示例:

-- 设置数据

var localStorage = ApplicationData.Current.LocalSettings;
localStorage.Values[key] = value;

-- 获取数据

var localStorage = ApplicationData.Current.LocalSettings;
if(localStorage.Values.ContainsKey(key)
 return (T)localStorage.Values[key];

尽管将上述内容包装在辅助类中通常更实用。

其他选项是将文件写入磁盘,例如 SQLite 或 XML/JSON 文件,但以上对于少量数据应该可以正常工作。

于 2013-01-30T05:53:56.107 回答
0

要将数组保存到本地存储中,您需要将其转换为字符串。

var localSettings = Windows.Storage.ApplicationData.current.localSettings;
var someSetting= new Array();

//Add values you want to store
someSetting.push("someValue");

//Change to string and save to local Storage
//toString will convert the array to a string with values separated by a comma
localSettings.values["someSettingInStorage"] = someSetting.toString();

//To retrieve the stored string value as a usable array
if (localSettings.values["someSetting"] != null)
    someSetting = (localSettings.values["someSetting"]).split(",");
于 2013-02-16T23:38:56.317 回答