首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将文本框转换为字典

将文本框转换为字典
EN

Stack Overflow用户
提问于 2011-12-07 17:10:24
回答 1查看 706关注 0票数 0

我正在尝试将文本框条目转换为双、双字典。即

输入文本如下:

1,63

二、三十一

三七八

4,83

然后我用逗号(,)分隔行。

我有下面的代码--但是IEnumerable不工作。任何帮助都将不胜感激!!

代码语言:javascript
运行
复制
 string input = txtInput.Text;
    List<string> list = new List<string>(
                               input.Split(new string[] { "\r\n" },
                               StringSplitOptions.RemoveEmptyEntries));

    IEnumerable<Dictionary<double, double>> dict = list.Select(row => row.Split(','))
    .Select(pair => new Dictionary<string, string>(double.Parse(pair[0]), double.Parse(pair[1])));
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-12-07 17:17:15

听起来你可能想:

代码语言:javascript
运行
复制
var dictionary = input.Lines
                      .Select(line => line.Split(','))
                      .ToDictionary(array => double.Parse(array[0]),
                                    array => double.Parse(array[1]));

然而:

  • -这假设拆分行都有正确的位数(并且您使用的是使用“”的区域性。作为十进制分隔符,否则您将遇到问题)
  • ,这假设每一行都有可解析的长,其中
  • 比较double值(字典所需)通常是个坏主意。你能用intdecimal代替吗?
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8419460

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档