我在将 long 转换为字符串时遇到问题。我正在做的是尝试将 DateTime.Now.Ticks 属性保存在 isolatedStorage 中,然后在之后检索它。这是我为保存它所做的:
IsolatedStorageFile appStorage = IsolatedStorageFile.GetUserStoreForApplication();
using (var file = appStorage.CreateFile("appState"))
{
using (var sw = new StreamWriter(file))
{
sw.Write(DateTime.Now.Ticks);
}
}
当我检索文件时,我会这样做:
if (appStorage.FileExists("appState"))
{
using (var file = appStorage.OpenFile("appState", FileMode.Open))
{
using (StreamReader sr = new StreamReader(file))
{
string s = sr.ReadToEnd();
}
}
appStorage.DeleteFile("appState");
}
直到这里我都没有问题,但是当我尝试转换我检索到的字符串时,编译器会抛出一个 FormatExeption。这是我尝试使用的两种方法:
long time = long.Parse(s);
long time = (long)Convert.ToDouble(s);
那么还有其他方法可以做到这一点吗?
编辑:问题不在于转换,而在于 StreamWriter 添加额外的字符。