首页 > 解决方案 > 将浮点数保存到文本文件无法正常工作

问题描述

我使用以下代码在屏幕上显示经过的时间。显示时间正常。但是节省时间有时不能正常工作,例如如果 Time = 2,000001

保存前,显示时间为 0:02.000

从文本文件保存并加载字符串后,显示的时间为 0:02.100

我发现,这行有问题,因为 str1 = 2 和 str2 = 1,因此换行 = 2,1 而不是 2,000001

newline = str1.ToString() + "," + str2.ToString();

我的代码有什么问题?我应该更改什么以便将时间正确写入文本文件中?

string s1;

float Time, delta;

delta = (float)gameTime.ElapsedGameTime.TotalSeconds; 

Time += delta;

TimeSpan ts = TimeSpan.FromSeconds(Time);

s1 = ts.ToString("m\\:ss\\.fff");

关卡完成后,我将时间保存在一个文本文件中,如下所示:

int str1, str2;

string[] strs1;

string line = Time;

strs1 = line.Split(',');

str1 = int.Parse(strs1[0]);

str2 = int.Parse(strs1[1]);

newline = str1.ToString() + "," + str2.ToString();

将字符串写入文本文件:

stream.WriteLine(newline);

从文本文件加载字符串:

private static System.Globalization.CultureInfo culture = new System.Globalization.CultureInfo("de-DE");

string line = reader.ReadLine();

strs = line.Split(';');   

float YourTime = float.Parse(strs[0], culture);

标签: c#xna

解决方案


推荐阅读