好的,假设我在 C# .Net 中有一个对象数组,如下所示:
object[] myObjects = new object[9];
myObjects[0] = "Foo";
myObjects[1] = 3;
myObjects[2] = 2.75;
myObjects[3] = "Bar";
myObjects[4] = 675;
myObjects[5] = "FooBar";
myObjects[6] = 12;
myObjects[7] = 11;
myObjects[8] = "FooBarFooBar";
我想在 foreach 块中枚举这个数组并使用 StreamWriter 将每个字符串写入文本文档,如下所示:
StreamWriter sw = new StreamWriter(@"C:\z\foobar.txt");
foreach(string myObject in myObjects)
{
sw.WriteLine(myObject);
}
sw.Flush();
sw.Close();
我的问题是,每当我尝试将integers
anddoubles
转换String
为时,都会引发异常。
如果我在语句try/catch
周围放置一个块foreach
,则在第二次迭代中引发的异常将触发对异常的捕获,并且不会将任何内容写入我的文本文档。
将 try/catch 放在 foreach 中是没有意义的,因为异常发生在演员表上。
我想使用 foreach 循环(让我们假设 for 循环不存在,并且我们不能使用索引 or ToString()
)来枚举对象数组,将每个对象转换为字符串并使用StreamWriter
. 如果演员工作,快乐的日子。如果没有,我想捕获抛出的异常并继续枚举剩余的对象。
谢谢
编辑:在有人说之前,这不是家庭作业!我正在尝试解决一个现实世界的问题。