igg*_*012 1 c# parsing types casting
所以我有一个文本文件,如下所示
-9
5.23
b
99
Magic
1.333
aa
Run Code Online (Sandbox Code Playgroud)
当我尝试使用以下代码读取它时,GetType()函数将其输出为字符串:
string stringData;
streamReader = new StreamReader(potato.txt);
while (streamReader.Peek() > 0)
{
data = streamReader.ReadLine();
Console.WriteLine("{0,8} {1,15}", stringData, stringData.GetType());
}
Run Code Online (Sandbox Code Playgroud)
这是输出:
-9 System.String
5.23 System.String
b System.String
99 System.String
Magic System.String
1.333 System.String
aa System.String
Run Code Online (Sandbox Code Playgroud)
我知道我要求streamReader类以字符串形式读取它.
我的问题是,如何将其作为不同的不同数据类型(即字符串,整数,双精度)读取,并将其输出为:
-9 System.int
5.23 System.double
b System.String
99 System.int
Magic System.String
1.333 System.double
aa System.String
Run Code Online (Sandbox Code Playgroud)
您必须将字符串转换为该类型:
string stringData;
double d;
int i;
streamReader = new StreamReader(potato.txt);
while (streamReader.Peek() > 0)
{
data = streamReader.ReadLine();
if (int.TryParse(data, out i)
{
Console.WriteLine("{0,8} {1,15}", i, i.GetType());
}
else if (double.TryParse(data, out d)
{
Console.WriteLine("{0,8} {1,15}", d, d.GetType());
}
else Console.WriteLine("{0,8} {1,15}", data, data.GetType());
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1098 次 |
| 最近记录: |