【发布时间】:2016-03-14 08:22:52
【问题描述】:
我有以下代码spinet:
更新
(code above this code is creation of pdf file)
Dim PdfFileInfo As FileInfo
Dim PdfModificationTime As Date
If (FileIO.FileSystem.FileExists(strPdfFileName)) Then
PdfFileInfo = FileIO.FileSystem.GetFileInfo(strPdfFileName)
PdfModificationTime = PdfFileInfo.LastWriteTime()
End If
文件存在,但是当我使用GetFileInfo() 和LastWriteTime() 时,它会给出一个错误:“索引超出了数组的范围”
我尝试了很多东西,但没有运气... :(
已解决
问题已解决,单独回答!
【问题讨论】:
-
我假设您在两行都没有遇到异常,那么它到底是在哪里引发的?发布堆栈跟踪。
-
当我添加这两行时,PdfFileInfo = FileIO.FileSystem.GetFileInfo(strPdfFileName) PdfModificationTime = PdfFileInfo.LastWriteTime() 它给了我一个例外
-
由于某些原因我无法获取堆栈跟踪(所以我实际上被卡住了,我知道这是运行时错误),即使文件存在,GetFileInfo() 是否可以返回 null?
-
当对象为
null时,您不会得到IndexOutOfRangeException,而是NullReferenceException。如果您尝试在不存在的索引处访问列表或数组的项目,则会出现异常。所以喜欢这里:int[] ints={1};int second=ints[1]; -
您发布的代码不会引发该异常。这里有一股腥味。为什么不能发布堆栈跟踪?如果你这样做,你将在五分钟内得到答案
标签: vb.net pdf indexoutofboundsexception last-modified