这是什么个意思?没搞明白。

XinXun 2013-01-27 04:01:08
问题1有如下代码:
Try
strFileContent = My.Computer.FileSystem.ReadAllText(fileName)
Catch IOExceptionErr As IOException
Throw New Exception(IOExceptionErr.Message)
End Try

代码中的Throw New Exception(IOExceptionErr.Message)起个什么作用,运行程序还是出错被中断,改成MessageBox.Show(IOExceptionErr.Message)不好吗?

问题2有如下代码:
strFileRowData = strFileContent.Split(New String() {ControlChars.CrLf}, StringSplitOptions.RemoveEmptyEntries)

这句中的New String() {ControlChars.CrLf}怎么理解?这算是VB.net的什么语法啊?
...全文
203 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
夜轻风 2013-01-31
  • 打赏
  • 举报
回复
引用 6 楼 sosoben 的回复:
那不写就算了 为什么还要写?? 楼主的意思是这样的 ,你们都没有……
为什么不写,写了可以根据具体的异常准确的判断出错位置,如果你内部根本不写throw,那外部得到的异常可能根本就是不真正的出错异常,平白添加代码出错时的调试难度。
music_0000 2013-01-29
  • 打赏
  • 举报
回复
在Catch模块里再抛出异常,好像不符合逻辑。
sosoben 2013-01-29
  • 打赏
  • 举报
回复
引用 5 楼 UR_Not_Alone 的回复:
楼上基本说的差不多了,我说说我对第一个问题的理解吧。为什么不直接messagebox,而是抛出异常呢。我们在内部调用方法,如果出错则抛出异常,到最外层调用处再进行统一处理。这样做最明显的好处就是防止一个错误多次报错。而且这样写代码比较规范,容易管理。
那不写就算了 为什么还要写?? 楼主的意思是这样的 ,你们都没有答到点子上啊 第二个New String() {ControlChars.CrLf}就是构造一个crlf的 string版类型咯 用他来吻合split的语法
夜轻风 2013-01-28
  • 打赏
  • 举报
回复
楼上基本说的差不多了,我说说我对第一个问题的理解吧。为什么不直接messagebox,而是抛出异常呢。我们在内部调用方法,如果出错则抛出异常,到最外层调用处再进行统一处理。这样做最明显的好处就是防止一个错误多次报错。而且这样写代码比较规范,容易管理。
zhujiazhi 2013-01-28
  • 打赏
  • 举报
回复
1。运行程序还是出错被中断 跟正常产生异常的结果一样的
ifcontinue 2013-01-27
  • 打赏
  • 举报
回复
问题1: Throw New Exception(IOExceptionErr.Message) 是将异常信息向调用方抛出,让调用方可以决定应该如何处理这个异常 问题2: strFileContent 按照 ControlChars.CrLf 分割字符串,并删除空白内容,然后返回一个字符串数组 ControlChars.CrLf 是换行符
  • 打赏
  • 举报
回复
Throw New Exception(IOExceptionErr.Message)//抛出异常,提示错误 New String() {ControlChars.CrLf}//string数组
EnForGrass 2013-01-27
  • 打赏
  • 举报
回复
Throw New Exception(IOExceptionErr.Message)起个什么作用 抛出异常啊,给用户合理的提示 ControlChars.CrLf代表回车/换行 strFileRowData = strFileContent.Split(New String() {ControlChars.CrLf}, StringSplitOptions.RemoveEmptyEntries) 表示按回车/换行分割成数组

16,720

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧