【问题标题】:string multiple string value in one int variablestring 一个 int 变量中的多个字符串值
【发布时间】:2016-11-09 09:35:44
【问题描述】:

如何将多个字符串值存储在一个 int 变量中

string OutReader = ConfigurationManager.AppSettings["OutReader"].ToString();
int outrdr = Convert.ToInt32(OutReader);

AppSettings["OutReader"]的值为:"(1,2)"

【问题讨论】:

  • outrdr 应该有什么价值?
  • AppSettings["OutReader"] 中的当前值是多少
  • 预期输出是什么?
  • AppSettings["OutReader"]="1,2"

标签: c# asp.net


【解决方案1】:

如果AppSettings["OutReader"] 当前有一个字符串,如:“(1,2)” 那么你可以这样做:

var sections = ConfigurationManager.AppSettings["OutReader"].Replace("(",string.Empty)
                        .Replace(")",string.Empty)
                        .Split(',');
if(sections.Length > 0)
{
    int outrdr = Convert.ToInt32(sections[0]);
}

如果section[0] 无法解析为int,这仍然会引发异常,因此请改用.TryParse - 只是想尽可能接近问题

【讨论】:

  • @Jay - 请再次解释当前无法正常工作的内容。当您这样做时,请使用您收到的当前代码和错误来编辑您的原始问题(而不是添加评论)。
  • @Jay - 结果是outrdr 包含值1(从(1,2) 开始)。不可能将 2 也存储在该单个整数中,但您可以使用 sections[1] 使用类似代码访问它。
  • 字符串 InReader = ConfigurationManager.AppSettings["InReader"].ToString();字符串 OutReader = ConfigurationManager.AppSettings["OutReader"].ToString();它直接工作
猜你喜欢
  • 1970-01-01
  • 2013-01-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-01-26
  • 2015-05-20
  • 1970-01-01
  • 2017-06-15
相关资源
最近更新 更多