首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

C# string转换为double的奇怪有关问题

2013-03-22 
C# string转换为double的奇怪问题从文本中读取字符串保存在字符串数组中,给定一个double值,找出第一个比给

C# string转换为double的奇怪问题
从文本中读取字符串保存在字符串数组中,给定一个double值,找出第一个比给定值大的数,输出这个数的索引。把字符串转化为double时却出错了,使用double.parse()方法和convert.todouble()方法都提示输入字符串错误,怎么回事?代码如下:
 private void button1_Click(object sender, EventArgs e)
        {
            string path = @"E:\1.txt";
            string[] s1=new string[100];
            if (File.Exists(path))                        
            {
                int i = 0;
                using (StreamReader sr = File.OpenText(path))
                {
                    string s = " ";
                    //从当前流中读出一行字符并将数据作为字符串返回
                    while ((s = sr.ReadLine()) != null)
                    {
                        s1[i] = s;
                        i++;
                    }

                }
            }
            double x = 805.445;
           
            for (int j = 0; j < s1.Length;j++)
            {
                if ( x < Convert.ToDouble( s1[j]))
                {
                    textBox1.Text = j.ToString();
                }
                break;
            }
         
        }

错误如下:

C# string转换为double的奇怪有关问题








[解决办法]


你监视一下 当前这个s1[j]的值是什么?
[解决办法]

引用:
引用:你监视一下 当前这个s1[j]的值是什么?



是string类型啊

 Convert.ToDouble( s1[j])
=>
 Convert.ToDouble( s1[j].Trim())
[解决办法]
引用:
引用:
你监视一下 当前这个s1[j]的值是什么?



是string类型啊

很明显结尾有一个空格的呢,正常情况下,是可以这样转的。
[解决办法]
楼上正解,楼主没有仔细看s1[j]的字符,最后有一个空格

热点排行