作为这个问题的完全重复关闭.
我有一个数组/元素列表.我想将其转换为字符串,由自定义分隔符分隔.例如:
[1,2,3,4,5] => "1,2,3,4,5"
Run Code Online (Sandbox Code Playgroud)
在c#中执行此操作的最短/最简单的方法是什么?
我总是通过循环列表并在添加分隔符之前检查当前元素是否不是最后一个元素来完成此操作.
for(int i=0; i<arr.Length; ++i)
{
str += arr[i].ToString();
if(i<arr.Length)
str += ",";
}
Run Code Online (Sandbox Code Playgroud)
是否有LINQ函数可以帮助我编写更少的代码?
正如标题所说,考虑到年份和周数,我如何获得月份数?
编辑:如果一周过了两个月,我想要一个星期的第一天所在的月份.
编辑(2):这是我获得周数的方式:
CultureInfo.CurrentCulture.Calendar.GetWeekOfYear(DateTime.Now, CalendarWeekRule.FirstDay, DayOfWeek.Monday);
Run Code Online (Sandbox Code Playgroud)
我只是想反过来.
我今天刚开始阅读Effective C++并且到了作者谈论operator new的地步.
这本书很好地解释了如何捕获(具有不同程度的优雅)std :: bad_alloc异常,如果内存不足,操作员可以引发该异常.
我的问题是:当没有足够的内存来实例化一个对象时,你经常检查一下这个案例,如果有的话?为什么?麻烦值得吗?
在任何(非web).net项目中,编译器会自动声明DEBUG和TRACE常量,因此我可以使用条件编译,例如,在调试与发布模式下以不同方式处理异常.
例如:
#if DEBUG
/* re-throw the exception... */
#else
/* write something in the event log... */
#endif
Run Code Online (Sandbox Code Playgroud)
如何在ASP.net项目中获得相同的行为?看起来web.config中的system.web/compilation部分可能是我需要的,但是如何以编程方式检查呢?或者我最好自己宣布DEBUG常量并在发布版本中对其进行评论?
编辑:我在VS 2008