作者yhn0tgb60 (呦厚厚)
看板Flash
標題[問題] 讀取純文字檔的錯誤???
時間Tue Apr 13 18:54:32 2010
我就我寫了一個從外部讀取純文字檔的資料
但是當文字檔有點大時...大概超過20kb時
讀取的的資料就會出錯......
我把 URLLoader.data 用 trace 印出來
發現有時資料會從中間開始...
有時資料會重複兩三次...
有時中文會變亂碼...
有時在資料的尾巴會出現亂碼...
有時甚至會發現前一個讀取的資料...
好像...檔案越大... 出錯的機會好像就越高 ???
以下是我的程式碼...就是讀一個 txt檔 再用 trace 印出
public class test
{
private var ldr_URL:URLLoader;
public function test():void
{
System.useCodePage=true;
ldr_URL = new URLLoader();
ldr_URL.load( new URLRequest( 'data.txt' ) );
ldr_URL.addEventListener( Event.COMPLETE , LoadComplete );
}
private function LoadComplete( evt:Event ):void
{
trace( ldr_URL.data );
}
}
....至於那個 data.txt ...就麻煩大家隨便複製個東西測試吧
好像檔案越大...錯誤機會越大...???
試越多次...好像出錯的機率越大...???
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 124.109.115.30
※ 編輯: yhn0tgb60 來自: 124.109.115.30 (04/13 18:56)
1F:→ yhn0tgb60:都沒人回我 T.T 04/14 09:31
2F:推 cjcat2266:資料會從中間開始,我覺得只是前半段output被洗掉而已.. 04/14 10:44
3F:→ yhn0tgb60:可是通常從中間開始的時候 資料都會重覆讀取2,3次 04/14 12:57
4F:→ yhn0tgb60:我懷疑是記憶體不乾淨的問題... 可是不知道怎麼解決 04/14 13:06
5F:→ aquarianboy:加個亂數給它,讓它以為每次都是不同檔案 04/14 14:27
6F:→ aquarianboy:data.txt?r=1239182 04/14 14:28
7F:→ yhn0tgb60:不懂 "?r=1239182" 是什麼意思??? 04/14 15:24
8F:推 cjcat2266:URL參數 04/14 16:00
9F:→ cjcat2266:並不會影響URL指定的路徑 04/14 16:00
10F:→ yhn0tgb60:還是不懂.. 這該設定在哪裡??? 04/14 16:47
11F:→ yhn0tgb60:URLRequest只能設定 String 路徑 .... 04/14 16:48
12F:→ yhn0tgb60:URLLoader 只能設定 URLRequest 04/14 16:48
13F:→ yhn0tgb60:我把 new URLRequest( 'data.txt?r=1239182' ) 04/14 16:50
14F:→ yhn0tgb60:就影響到路徑... 04/14 16:50
15F:→ yhn0tgb60:這個問題~~今天一位朋友回答我了~~他說這是一直存在的 04/17 00:42
16F:→ yhn0tgb60:問題~~主要是因為文字檔在開啟時使用的記憶體太大造成 04/17 00:43
17F:→ yhn0tgb60:的錯誤~~非常多的軟體都有這問題~~他建議我把文字檔分 04/17 00:43
18F:→ yhn0tgb60:成很多小的文字檔讀取~問題就可以解決了 04/17 00:44
19F:推 cjcat2266:還真的是文字檔的問題啊? 20kb不大啊 04/17 00:45
20F:→ cjcat2266:哪天來試試看好了 04/17 00:45
21F:→ yhn0tgb60:雖然20K~~可是因為我有一直換行~~每行的內容都只有一點 04/17 02:00
22F:→ yhn0tgb60:點~~一共超過2000行~~好像行數越多~~也越會有問題 04/17 02:01
23F:→ aquarianboy:那把文字檔改小後,問題解決了嗎? 04/17 03:14
24F:→ aquarianboy:因為我也覺得20kb如果就把記憶體弄壞了,電腦也太弱了 04/17 03:15
25F:→ yhn0tgb60:最近的新資訊..文字編碼要用UTF-8 不能用ANSI 就沒事了 04/22 09:53