我用file.readalllines()方法读csv文件,如果此文件正在用excel方式打开的话,程序就报错了。。。
我只想读,不写。。。
可以用共享的方式么?
实在不行,我就换file.open()的方式了,这样就可以选择共享读文件了。。。
可是我想用file.readalllines(),一行一行的读阿
各位大侠都是怎么处理的?
22 个解决方案
#1
Dim fs As FileStream = File.Open("C:\Book1.csv", FileMode.Open, FileAccess.Read, FileShare.ReadWrite)
Dim sr As StreamReader = New StreamReader(fs)
While Not sr.EndOfStream
Dim line As String = sr.ReadLine()
'進行操作
End While
sr.Close()
fs.Close()
'除使用ReadLine之外,也可使用ReadToEnd()方法來讀取全部內容
#2
哈,谢谢楼上大侠。。
我试一下上来报告哈
我试一下上来报告哈
#3
framework2.0...2005
Dim fs As IO.FileStream之后,没有File.Open()这个方法啊?
只有FileOpen()方法,可是写成下面这样的话,报错说不能写成式子,
Dim fs As FileStream = FileOpen("C:\Book1.csv", FileMode.Open, FileAccess.Read, FileShare.ReadWrite)
单独打开文件,是可以的呀
FileOpen("C:\Book1.csv", FileMode.Open, FileAccess.Read, FileShare.ReadWrite)
这样子的话,怎么办呢?
Dim fs As IO.FileStream之后,没有File.Open()这个方法啊?
只有FileOpen()方法,可是写成下面这样的话,报错说不能写成式子,
Dim fs As FileStream = FileOpen("C:\Book1.csv", FileMode.Open, FileAccess.Read, FileShare.ReadWrite)
单独打开文件,是可以的呀
FileOpen("C:\Book1.csv", FileMode.Open, FileAccess.Read, FileShare.ReadWrite)
这样子的话,怎么办呢?
#4
使用My.Computer.FileSystem 对象的FileOpen方法试试看。
#5
Imports System.IO
#6
File類的完整命名空間是System.IO.File
#7
谢谢楼上大侠继续回答^@^
答楼上大侠,我试过了,正在用excel格式打开的csv文件,还是读不进来。还是报错。。。
Dim strsplit() As String
Dim fs As IO.FileStream = File.Open(.FileName, FileMode.Open, FileAccess.Read, FileShare.Read)
Dim sr As IO.StreamReader = New IO.StreamReader(fs)
Dim lines As String = sr.ReadLine()
strsplit = Split(sr.ReadLine(), ",")
Dim i As Integer
For i = 0 To UBound(strsplit) - 1
CheckedListBox1.Items.Add(strsplit(i), False) '我只是读了第一行的标题,绑到checklistbox上。
Next i
sr.Close()
fs.Close()
#8
File.Open(.FileName, FileMode.Open, FileAccess.Read, FileShare.Read)
---------------------------------------------
FileShare.ReadWrite
Dim lines As String = sr.ReadLine()
strsplit = Split(sr.ReadLine(), ",")
----------------------------------
每調用一次ReadLine,就會讀一行文本出來,你這裡的讀了兩次,但lines沒再使用了,難道這是你的本意?
另外,如果你是要使用ReadLine一行行讀出全部文本,通常應該按如果方式來執行:
---------------------------------------------
FileShare.ReadWrite
Dim lines As String = sr.ReadLine()
strsplit = Split(sr.ReadLine(), ",")
----------------------------------
每調用一次ReadLine,就會讀一行文本出來,你這裡的讀了兩次,但lines沒再使用了,難道這是你的本意?
另外,如果你是要使用ReadLine一行行讀出全部文本,通常應該按如果方式來執行:
While Not sr.EndOfStream
Dim line As String = sr.ReadLine()
'進行操作
End While
#9
谢谢楼上大侠这么耐心。。
1。FileShare.ReadWrite 改成这个之后,可以读了!嗬嗬。谢谢谢谢/
2。关于第二个问题,我原本用的是file.readalllines(),这个方法。
这样当行数也不确定的情况下,我可以分别对第1行,第2行、以及3行以后的数据进行分类操作。。。
'Dim lines As String() = System.IO.File.ReadAllLines(.FileName, System.Text.Encoding.Default)
'Dim strsplit() As String
'For n As Integer = 0 To 1 '暂时读2行的。。
' strsplit = lines(n).Split(",")
' Dim i As Integer
' For i = 0 To UBound(strsplit)
' If n = 0 Then
' CheckedListBox1.Items.Add(strsplit(i), False)
' Else : n = 1
' If strsplit(i).ToString = "○" Then
' 'チェック状態を変更する
' CheckedListBox1.SetItemCheckState(i, CheckState.Checked)
' End If
' End If
' Next i
'Next n
问题:
如果用
While Not sr.EndOfStream
Dim line As String = sr.ReadLine()
'進行操作
End While
这个的话,我怎么区别第一行,第二行呢?
我是新手。。如果事态笨的问题,还请包涵哦。。。。 ^\^
1。FileShare.ReadWrite 改成这个之后,可以读了!嗬嗬。谢谢谢谢/
2。关于第二个问题,我原本用的是file.readalllines(),这个方法。
这样当行数也不确定的情况下,我可以分别对第1行,第2行、以及3行以后的数据进行分类操作。。。
'Dim lines As String() = System.IO.File.ReadAllLines(.FileName, System.Text.Encoding.Default)
'Dim strsplit() As String
'For n As Integer = 0 To 1 '暂时读2行的。。
' strsplit = lines(n).Split(",")
' Dim i As Integer
' For i = 0 To UBound(strsplit)
' If n = 0 Then
' CheckedListBox1.Items.Add(strsplit(i), False)
' Else : n = 1
' If strsplit(i).ToString = "○" Then
' 'チェック状態を変更する
' CheckedListBox1.SetItemCheckState(i, CheckState.Checked)
' End If
' End If
' Next i
'Next n
问题:
如果用
While Not sr.EndOfStream
Dim line As String = sr.ReadLine()
'進行操作
End While
这个的话,我怎么区别第一行,第二行呢?
我是新手。。如果事态笨的问题,还请包涵哦。。。。 ^\^
#10
呵呵,
上面的问题解决啦。。。用的for,没用while....
谢谢大侠哈。
不过还有一个小问题
如何取得读入的文件的行数呢?
#11
Dim LineCnt As Integer=0
While Not sr.EndOfStream
Dim line As String = sr.ReadLine()
LineCnt+=1
'進行操作
End While
'至此,LineCnt就是讀出的總行數了
#12
做VB的啊 我是做C#的给你不一样
#13
谢谢boblaw大侠。。^@^
可是,为什么是FileShare.ReadWrite
而不是FileShare.Read呢?
这个事件中我只要读,不要写,为什么我设定成FileShare.Read,文件打开的情况下,程序不能读文件呢?
设定成FileShare.ReadWrite ,文件打开的情况下,程序就可以读文件呢?
可是,为什么是FileShare.ReadWrite
而不是FileShare.Read呢?
这个事件中我只要读,不要写,为什么我设定成FileShare.Read,文件打开的情况下,程序不能读文件呢?
设定成FileShare.ReadWrite ,文件打开的情况下,程序就可以读文件呢?
#14
我找到答案了。。。
そして3番目のFileShareパラメータだが、これは対象のファイルに対する共有方法指定するもので、これには、「FileShare.None」「FileShare.Read」「FileShare.Write」「FileShare.ReadWrite」「FileShare.Delete」「FileShare.Inheritable」が指定できる。StreamReaderクラスはどうやら、ファイル・オープン時に「FileShare.Read」しか与えていないようなので、ここで「FileShare.ReadWrite」を指定すれば、すでに書き込みでオープン中のファイルをオープンすることができる。
可是觉得,FileShare.Read不就没用了么?
そして3番目のFileShareパラメータだが、これは対象のファイルに対する共有方法指定するもので、これには、「FileShare.None」「FileShare.Read」「FileShare.Write」「FileShare.ReadWrite」「FileShare.Delete」「FileShare.Inheritable」が指定できる。StreamReaderクラスはどうやら、ファイル・オープン時に「FileShare.Read」しか与えていないようなので、ここで「FileShare.ReadWrite」を指定すれば、すでに書き込みでオープン中のファイルをオープンすることができる。
可是觉得,FileShare.Read不就没用了么?
#15
FileShare.ReadWrite 是允許其他程序讀寫,而不是當前程序
#16
boblaw 你真厉害,我想拜你为师啦。^@^
不过 ·允許其他程序讀寫· 说得我糊涂了。。。
我验证了一下
条件
1。设定为FileShare.Read
2。csv文件改成'读专用'(汗,不知道该怎么说了)
结果
文件打开的情况下,程序可以读文件。
条件
1。设定为FileShare.Read
2。csv文件正常读写都可。
结果
文件打开的情况下,程序不可以access文件。
也就是说
FileShare.ReadWrite 是打开拥有写权利的文件的。
FileShare.Read 是打开'读专用'的文件的。
对么?
如果设定为·FileShare.ReadWrite·的话,可以同时读文件,对文件没有危险的吧?
如果其他人正在写文件的时候,这边也可以只读进来的话。。。
一般程序是不是不这么设计的呀?
我好罗索。。。辛苦大侠
#17
不知道是什么原因,我看不太懂上面所提到的“sr”.
我使用VB2005做了一个测试,和楼主的代码有些不大一样,我的是这样的:
我使用VB2005做了一个测试,和楼主的代码有些不大一样,我的是这样的:
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim path As String = "D:\aa.csv"
If System.IO.File.Exists(path) Then
Dim sb As New System.Text.StringBuilder
Using sr As IO.FileStream = System.IO.File.Open(path, System.IO.FileMode.Open, System.IO.FileAccess.Read, System.IO.FileShare.ReadWrite)
Dim array As Byte() = New Byte(1024) {}
Dim length As Integer = 0
Do
length = sr.Read(array, 0, 1024)
Dim str As String = System.Text.Encoding.GetEncoding("gb2312").GetString(array, 0, length)
sb.Append(str)
Loop While (length = 1024)
Dim lines As String() = sb.ToString.Split(New String() {ChrW(13) & ChrW(10)}, StringSplitOptions.RemoveEmptyEntries)
End Using
End If
End Sub
#18
File.Open("C:\Book1.csv", FileMode.Open, FileAccess.Read, FileShare.ReadWrite)
---------------------------------------------------------------
如上代碼,FileAccess是表示當前程序需要的訪問權限,而FileShare是表示允許其他程序的訪問權限.
你用Excel打開csv文件時,Excel肯定具有讀寫權限.這時候你的程序打開這個csv文件,如果你設置FileShare.Read(也就是衹允許其他文件衹讀)是不行的,因為Excel已經有讀寫權限了,你衹允許衹讀是不行的,設為ReadWrite剛好符合.
---------------------------------------------------------------
如上代碼,FileAccess是表示當前程序需要的訪問權限,而FileShare是表示允許其他程序的訪問權限.
你用Excel打開csv文件時,Excel肯定具有讀寫權限.這時候你的程序打開這個csv文件,如果你設置FileShare.Read(也就是衹允許其他文件衹讀)是不行的,因為Excel已經有讀寫權限了,你衹允許衹讀是不行的,設為ReadWrite剛好符合.
#19
to hbxtlhx :
我用的也是vb2005.下面的代碼是有測試過OK的
StreamReader是繼承自TextReader.封裝了一些對流進行文本讀取的方法
我用的也是vb2005.下面的代碼是有測試過OK的
Dim fs As FileStream = File.Open("C:\Book1.csv", FileMode.Open, FileAccess.Read, FileShare.ReadWrite)
Dim sr As StreamReader = New StreamReader(fs)
While Not sr.EndOfStream
Dim line As String = sr.ReadLine()
'進行操作
End While
sr.Close()
fs.Close()
StreamReader是繼承自TextReader.封裝了一些對流進行文本讀取的方法
#20
呵呵,彻底明白啦。
使自己没好好看File.Open方法的概念问题。。。
回17楼,谢谢你关注帖子。可是我还没有太看懂你的例子哦。。。
忙着交差,等一下研究一下哈。
不过boblaw 给出的例子很好的,中文网站上面没有,不过你可以看一下这个链接,访问已打开的文件,好像大部分都是用的这个方法哦。
http://www.atmarkit.co.jp/fdotnet/dotnettips/707shareread/shareread.html
使自己没好好看File.Open方法的概念问题。。。
回17楼,谢谢你关注帖子。可是我还没有太看懂你的例子哦。。。
忙着交差,等一下研究一下哈。
不过boblaw 给出的例子很好的,中文网站上面没有,不过你可以看一下这个链接,访问已打开的文件,好像大部分都是用的这个方法哦。
http://www.atmarkit.co.jp/fdotnet/dotnettips/707shareread/shareread.html
#21
哦,是这样的。
#22
结贴给分啦。。。。。。。。。。。。。。。。。。
#1
Dim fs As FileStream = File.Open("C:\Book1.csv", FileMode.Open, FileAccess.Read, FileShare.ReadWrite)
Dim sr As StreamReader = New StreamReader(fs)
While Not sr.EndOfStream
Dim line As String = sr.ReadLine()
'進行操作
End While
sr.Close()
fs.Close()
'除使用ReadLine之外,也可使用ReadToEnd()方法來讀取全部內容
#2
哈,谢谢楼上大侠。。
我试一下上来报告哈
我试一下上来报告哈
#3
framework2.0...2005
Dim fs As IO.FileStream之后,没有File.Open()这个方法啊?
只有FileOpen()方法,可是写成下面这样的话,报错说不能写成式子,
Dim fs As FileStream = FileOpen("C:\Book1.csv", FileMode.Open, FileAccess.Read, FileShare.ReadWrite)
单独打开文件,是可以的呀
FileOpen("C:\Book1.csv", FileMode.Open, FileAccess.Read, FileShare.ReadWrite)
这样子的话,怎么办呢?
Dim fs As IO.FileStream之后,没有File.Open()这个方法啊?
只有FileOpen()方法,可是写成下面这样的话,报错说不能写成式子,
Dim fs As FileStream = FileOpen("C:\Book1.csv", FileMode.Open, FileAccess.Read, FileShare.ReadWrite)
单独打开文件,是可以的呀
FileOpen("C:\Book1.csv", FileMode.Open, FileAccess.Read, FileShare.ReadWrite)
这样子的话,怎么办呢?
#4
使用My.Computer.FileSystem 对象的FileOpen方法试试看。
#5
Imports System.IO
#6
File類的完整命名空間是System.IO.File
#7
谢谢楼上大侠继续回答^@^
答楼上大侠,我试过了,正在用excel格式打开的csv文件,还是读不进来。还是报错。。。
Dim strsplit() As String
Dim fs As IO.FileStream = File.Open(.FileName, FileMode.Open, FileAccess.Read, FileShare.Read)
Dim sr As IO.StreamReader = New IO.StreamReader(fs)
Dim lines As String = sr.ReadLine()
strsplit = Split(sr.ReadLine(), ",")
Dim i As Integer
For i = 0 To UBound(strsplit) - 1
CheckedListBox1.Items.Add(strsplit(i), False) '我只是读了第一行的标题,绑到checklistbox上。
Next i
sr.Close()
fs.Close()
#8
File.Open(.FileName, FileMode.Open, FileAccess.Read, FileShare.Read)
---------------------------------------------
FileShare.ReadWrite
Dim lines As String = sr.ReadLine()
strsplit = Split(sr.ReadLine(), ",")
----------------------------------
每調用一次ReadLine,就會讀一行文本出來,你這裡的讀了兩次,但lines沒再使用了,難道這是你的本意?
另外,如果你是要使用ReadLine一行行讀出全部文本,通常應該按如果方式來執行:
---------------------------------------------
FileShare.ReadWrite
Dim lines As String = sr.ReadLine()
strsplit = Split(sr.ReadLine(), ",")
----------------------------------
每調用一次ReadLine,就會讀一行文本出來,你這裡的讀了兩次,但lines沒再使用了,難道這是你的本意?
另外,如果你是要使用ReadLine一行行讀出全部文本,通常應該按如果方式來執行:
While Not sr.EndOfStream
Dim line As String = sr.ReadLine()
'進行操作
End While
#9
谢谢楼上大侠这么耐心。。
1。FileShare.ReadWrite 改成这个之后,可以读了!嗬嗬。谢谢谢谢/
2。关于第二个问题,我原本用的是file.readalllines(),这个方法。
这样当行数也不确定的情况下,我可以分别对第1行,第2行、以及3行以后的数据进行分类操作。。。
'Dim lines As String() = System.IO.File.ReadAllLines(.FileName, System.Text.Encoding.Default)
'Dim strsplit() As String
'For n As Integer = 0 To 1 '暂时读2行的。。
' strsplit = lines(n).Split(",")
' Dim i As Integer
' For i = 0 To UBound(strsplit)
' If n = 0 Then
' CheckedListBox1.Items.Add(strsplit(i), False)
' Else : n = 1
' If strsplit(i).ToString = "○" Then
' 'チェック状態を変更する
' CheckedListBox1.SetItemCheckState(i, CheckState.Checked)
' End If
' End If
' Next i
'Next n
问题:
如果用
While Not sr.EndOfStream
Dim line As String = sr.ReadLine()
'進行操作
End While
这个的话,我怎么区别第一行,第二行呢?
我是新手。。如果事态笨的问题,还请包涵哦。。。。 ^\^
1。FileShare.ReadWrite 改成这个之后,可以读了!嗬嗬。谢谢谢谢/
2。关于第二个问题,我原本用的是file.readalllines(),这个方法。
这样当行数也不确定的情况下,我可以分别对第1行,第2行、以及3行以后的数据进行分类操作。。。
'Dim lines As String() = System.IO.File.ReadAllLines(.FileName, System.Text.Encoding.Default)
'Dim strsplit() As String
'For n As Integer = 0 To 1 '暂时读2行的。。
' strsplit = lines(n).Split(",")
' Dim i As Integer
' For i = 0 To UBound(strsplit)
' If n = 0 Then
' CheckedListBox1.Items.Add(strsplit(i), False)
' Else : n = 1
' If strsplit(i).ToString = "○" Then
' 'チェック状態を変更する
' CheckedListBox1.SetItemCheckState(i, CheckState.Checked)
' End If
' End If
' Next i
'Next n
问题:
如果用
While Not sr.EndOfStream
Dim line As String = sr.ReadLine()
'進行操作
End While
这个的话,我怎么区别第一行,第二行呢?
我是新手。。如果事态笨的问题,还请包涵哦。。。。 ^\^
#10
呵呵,
上面的问题解决啦。。。用的for,没用while....
谢谢大侠哈。
不过还有一个小问题
如何取得读入的文件的行数呢?
#11
Dim LineCnt As Integer=0
While Not sr.EndOfStream
Dim line As String = sr.ReadLine()
LineCnt+=1
'進行操作
End While
'至此,LineCnt就是讀出的總行數了
#12
做VB的啊 我是做C#的给你不一样
#13
谢谢boblaw大侠。。^@^
可是,为什么是FileShare.ReadWrite
而不是FileShare.Read呢?
这个事件中我只要读,不要写,为什么我设定成FileShare.Read,文件打开的情况下,程序不能读文件呢?
设定成FileShare.ReadWrite ,文件打开的情况下,程序就可以读文件呢?
可是,为什么是FileShare.ReadWrite
而不是FileShare.Read呢?
这个事件中我只要读,不要写,为什么我设定成FileShare.Read,文件打开的情况下,程序不能读文件呢?
设定成FileShare.ReadWrite ,文件打开的情况下,程序就可以读文件呢?
#14
我找到答案了。。。
そして3番目のFileShareパラメータだが、これは対象のファイルに対する共有方法指定するもので、これには、「FileShare.None」「FileShare.Read」「FileShare.Write」「FileShare.ReadWrite」「FileShare.Delete」「FileShare.Inheritable」が指定できる。StreamReaderクラスはどうやら、ファイル・オープン時に「FileShare.Read」しか与えていないようなので、ここで「FileShare.ReadWrite」を指定すれば、すでに書き込みでオープン中のファイルをオープンすることができる。
可是觉得,FileShare.Read不就没用了么?
そして3番目のFileShareパラメータだが、これは対象のファイルに対する共有方法指定するもので、これには、「FileShare.None」「FileShare.Read」「FileShare.Write」「FileShare.ReadWrite」「FileShare.Delete」「FileShare.Inheritable」が指定できる。StreamReaderクラスはどうやら、ファイル・オープン時に「FileShare.Read」しか与えていないようなので、ここで「FileShare.ReadWrite」を指定すれば、すでに書き込みでオープン中のファイルをオープンすることができる。
可是觉得,FileShare.Read不就没用了么?
#15
FileShare.ReadWrite 是允許其他程序讀寫,而不是當前程序
#16
boblaw 你真厉害,我想拜你为师啦。^@^
不过 ·允許其他程序讀寫· 说得我糊涂了。。。
我验证了一下
条件
1。设定为FileShare.Read
2。csv文件改成'读专用'(汗,不知道该怎么说了)
结果
文件打开的情况下,程序可以读文件。
条件
1。设定为FileShare.Read
2。csv文件正常读写都可。
结果
文件打开的情况下,程序不可以access文件。
也就是说
FileShare.ReadWrite 是打开拥有写权利的文件的。
FileShare.Read 是打开'读专用'的文件的。
对么?
如果设定为·FileShare.ReadWrite·的话,可以同时读文件,对文件没有危险的吧?
如果其他人正在写文件的时候,这边也可以只读进来的话。。。
一般程序是不是不这么设计的呀?
我好罗索。。。辛苦大侠
#17
不知道是什么原因,我看不太懂上面所提到的“sr”.
我使用VB2005做了一个测试,和楼主的代码有些不大一样,我的是这样的:
我使用VB2005做了一个测试,和楼主的代码有些不大一样,我的是这样的:
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim path As String = "D:\aa.csv"
If System.IO.File.Exists(path) Then
Dim sb As New System.Text.StringBuilder
Using sr As IO.FileStream = System.IO.File.Open(path, System.IO.FileMode.Open, System.IO.FileAccess.Read, System.IO.FileShare.ReadWrite)
Dim array As Byte() = New Byte(1024) {}
Dim length As Integer = 0
Do
length = sr.Read(array, 0, 1024)
Dim str As String = System.Text.Encoding.GetEncoding("gb2312").GetString(array, 0, length)
sb.Append(str)
Loop While (length = 1024)
Dim lines As String() = sb.ToString.Split(New String() {ChrW(13) & ChrW(10)}, StringSplitOptions.RemoveEmptyEntries)
End Using
End If
End Sub
#18
File.Open("C:\Book1.csv", FileMode.Open, FileAccess.Read, FileShare.ReadWrite)
---------------------------------------------------------------
如上代碼,FileAccess是表示當前程序需要的訪問權限,而FileShare是表示允許其他程序的訪問權限.
你用Excel打開csv文件時,Excel肯定具有讀寫權限.這時候你的程序打開這個csv文件,如果你設置FileShare.Read(也就是衹允許其他文件衹讀)是不行的,因為Excel已經有讀寫權限了,你衹允許衹讀是不行的,設為ReadWrite剛好符合.
---------------------------------------------------------------
如上代碼,FileAccess是表示當前程序需要的訪問權限,而FileShare是表示允許其他程序的訪問權限.
你用Excel打開csv文件時,Excel肯定具有讀寫權限.這時候你的程序打開這個csv文件,如果你設置FileShare.Read(也就是衹允許其他文件衹讀)是不行的,因為Excel已經有讀寫權限了,你衹允許衹讀是不行的,設為ReadWrite剛好符合.
#19
to hbxtlhx :
我用的也是vb2005.下面的代碼是有測試過OK的
StreamReader是繼承自TextReader.封裝了一些對流進行文本讀取的方法
我用的也是vb2005.下面的代碼是有測試過OK的
Dim fs As FileStream = File.Open("C:\Book1.csv", FileMode.Open, FileAccess.Read, FileShare.ReadWrite)
Dim sr As StreamReader = New StreamReader(fs)
While Not sr.EndOfStream
Dim line As String = sr.ReadLine()
'進行操作
End While
sr.Close()
fs.Close()
StreamReader是繼承自TextReader.封裝了一些對流進行文本讀取的方法
#20
呵呵,彻底明白啦。
使自己没好好看File.Open方法的概念问题。。。
回17楼,谢谢你关注帖子。可是我还没有太看懂你的例子哦。。。
忙着交差,等一下研究一下哈。
不过boblaw 给出的例子很好的,中文网站上面没有,不过你可以看一下这个链接,访问已打开的文件,好像大部分都是用的这个方法哦。
http://www.atmarkit.co.jp/fdotnet/dotnettips/707shareread/shareread.html
使自己没好好看File.Open方法的概念问题。。。
回17楼,谢谢你关注帖子。可是我还没有太看懂你的例子哦。。。
忙着交差,等一下研究一下哈。
不过boblaw 给出的例子很好的,中文网站上面没有,不过你可以看一下这个链接,访问已打开的文件,好像大部分都是用的这个方法哦。
http://www.atmarkit.co.jp/fdotnet/dotnettips/707shareread/shareread.html
#21
哦,是这样的。
#22
结贴给分啦。。。。。。。。。。。。。。。。。。