子字符串编译但代码不起作用[关闭]
Posted
技术标签:
【中文标题】子字符串编译但代码不起作用[关闭]【英文标题】:Substring compiles but code doesn't work [closed] 【发布时间】:2013-01-04 16:11:09 【问题描述】:当我使用下面的代码时,它可以编译,但其余代码似乎不起作用。当我取出其中的 Substring 部分时,它确实如此。
-步骤
String theDate, theWeekDay;
if (ToTime(Time[0]) == ToTime(0, 0, 0))
theDate=ToDay(Time[0]).ToString().Substring(0,3);
theWeekDay=Time[0].DayOfWeek.ToString().Substring(4,8);
DrawTextFixed("day",theWeekDay, TextPosition.BottomRight);
DrawText("day"+Convert.ToString(ToDay(Time[0])),
theWeekDay+" "+theDate,0, Low[0]-TickSize*20, Color.Blue);
【问题讨论】:
那是你的完整代码吗?theWeekDay
和 Time
是什么?你在哪里声明和初始化?你到底想达到什么目的?
更准确地定义“似乎不起作用”
你有异常吗?
重新编写新代码:ToTime() 和 ToDay() 来自哪里?签名?
【参考方案1】:
您没有提供足够的信息来解决您的问题,但如果您只是想以缩写格式获取星期几的名称,请改用:
theWeekDay = Time[0].ToString("ddd");
【讨论】:
虽然这确实用两个而不是所需的三个字符来缩写它(顺便说一句,与System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.GetAbbreviatedDayName(Time[0].DayOfWeek)
相同。
@TimSchmelter,不应该。见msdn.microsoft.com/en-us/library/8tfzyc64.aspx
我收到此错误:在柱 71 上为指标“Killzones3”调用“OnBarUpdate”方法时出错:格式字符串只能是“G”、“g”、“X”、“ x”、“F”、“f”、“D”或“d”。
@Brandon:嗯,也许德国不一样,我们只有两个。
@TimSchmelter,可能。文化格式可能会有所不同。还有 Rik,您需要(在您的问题中)指定 OnBarUpdate 和 Killzones3 是什么。【参考方案2】:
您将不得不提供的不仅仅是这个 sn-p 代码。您通过索引器访问的时间对象是什么?您是否对此进行了调试以查看 Time[0]
是否真的有值?我的猜测是Time[0]
不会返回DayOfWeek
可以使用的值,因此Substring(0,3)
正在针对空字符串或null
值运行
【讨论】:
我以错误的方式使用子字符串,我认为 Substring(4,8) 会占用 4 到 8 个字符,因此我收到了一个错误,因为我超出了字符串【参考方案3】:除非您省略了部分代码,否则您的分配不会发生在类定义或方法中。
【讨论】:
以上是关于子字符串编译但代码不起作用[关闭]的主要内容,如果未能解决你的问题,请参考以下文章