以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  RichTextBox  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=124395)

--  作者:colink
--  发布时间:2018/9/5 14:40:00
--  RichTextBox
我有一个600多兆的txt文件要在窗口打开,用textbox内存溢出,网上说RichTextBox可以,foxtable有这个控件吗?
--  作者:有点甜
--  发布时间:2018/9/5 14:43:00
--  
Dim rt As New Windows.Forms.RichTextBox
rt.Dock = Windows.Forms.DockStyle.Fill
rt.name = "RichTextBox1"
e.Form.Controls("Panel1").BaseControl.Controls.Add(rt)
rt.AppendText("您共计拥有客户 ")

--  作者:有点甜
--  发布时间:2018/9/5 14:44:00
--  

内存溢出应该不是textbox的问题,是不是你读取txt内容的问题?

 

http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=120841&skin=0

 


--  作者:colink
--  发布时间:2018/9/5 14:44:00
--  
谢谢
--  作者:colink
--  发布时间:2018/9/5 14:50:00
--  

文件怎么打开?

 


--  作者:有点甜
--  发布时间:2018/9/5 14:52:00
--  
以下是引用colink在2018/9/5 14:50:00的发言:

文件怎么打开?

 

 

内存溢出应该不是textbox的问题,是不是你读取txt内容的问题?

 

http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=120841&skin=0


--  作者:colink
--  发布时间:2018/9/5 15:05:00
--  

我用下面代码,运行后卡死了,没报错

Dim rt As New Windows.Forms.RichTextBox
rt.Dock = Windows.Forms.DockStyle.Fill
rt.name = "RichTextBox1"
e.Form.Controls("Panel1").BaseControl.Controls.Add(rt)
Dim sr As new Io.StreamReader("d:\\123456.txt")
Dim line As String = sr.ReadLine()
Do While line IsNot Nothing
rt.AppendText(line)
    line = sr.ReadLine()
Loop
sr.Close 
 


--  作者:有点甜
--  发布时间:2018/9/5 15:25:00
--  

你执行这种代码会不会卡死?

 

Dim sr As new Io.StreamReader("d:\\123456.txt")
Dim line As String = sr.ReadLine()
Do While line IsNot Nothing
    line = sr.ReadLine()
    output.show(line)
Loop
sr.Close


--  作者:colink
--  发布时间:2018/9/5 17:17:00
--  
不会卡死,但时间很长。可能刚才的代码也没有卡死,只是时间太长以为死了,有快速加载的方法吗?。richtextbox有个loadfile,能用吗?怎么用?
--  作者:有点甜
--  发布时间:2018/9/5 17:44:00
--  
以下是引用colink在2018/9/5 17:17:00的发言:
不会卡死,但时间很长。可能刚才的代码也没有卡死,只是时间太长以为死了,有快速加载的方法吗?。richtextbox有个loadfile,能用吗?怎么用?

 

那你试试这样

 

Dim sr As new Io.StreamReader("d:\\123456.txt")
Dim line As String = sr.ReadLine()
Do While line IsNot Nothing
    line = sr.ReadLine()
    output.show(line)
    application.Doevents
Loop
sr.Close