台灣最大程式設計社群網站
線上人數
1683
 
會員總數:246319
討論主題:189850
歡迎您免費加入會員
討論區列表 >> CSS/HTML5/Bootstarp >> 文字讀取問題
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
文字讀取問題
價值 : 10 QP  點閱數:1267 回應數:4
樓主

han
初學者
360 94
1709 160
發送站內信

ExchangeInfo.txt裡面的內容為
usertext //斷行
passtext

我想要先讀出裡面的內容
有用陣列來取得了
有個問題是 再function TextLoad1(tloadevent) {
}
裡面做trace(ch1[0])跟trace(ch1[1])是有值的

但是在外面做的話就會變成null

因為我想要在第二段能讀出trace(ch1[0])跟trace(ch1[1])的值
var Ureq:URLRequest=new URLRequest("http://61.46.121.3/login.aspx?passWord="+ch[0]+"&userName="+ch[1]+"");
請問怎麼讓他在外面也可以讀到trace(ch1[0])跟trace(ch1[1])
------------------------------------------------------------------------------------------------------------
var Ureq1:URLRequest=new URLRequest("C:\\ITRI\\CNA\\ExchangeInfo.txt");
//使用 URLRequest 指定外部文字檔案

var loader1:URLLoader = new URLLoader(); //製作 URLLoader

loader1.load(Ureq1); //從檔案中讀取文字
var ch1:Array = new Array(); //宣告ch1為陣列,以便判斷文字
function TextLoad1(tloadevent) {

ch1=loader1.data.split("\n"); //以\n來排序陣列 ch1[0]=第一行 ch1[1]=第二行 以此類推

trace(ch1[0])//內容為usertext
trace(ch1[0])//內容為passtext
}

trace(ch1[0])//內容為NULL 我想要在外面也可以讀到usertext
trace(ch1[0])//內容為NULL 我想要在外面也可以讀到passtext



var Ureq:URLRequest=new URLRequest("http://61.46.121.3/login.aspx?passWord=[color=Black]"+ch1[0]+"[/color]&userName="[color=Yellow]+ch1[1]+[/color]"");
//使用 URLRequest 指定外部文字檔案

var loader:URLLoader = new URLLoader(); //製作 URLLoader

loader.load(Ureq); //從檔案中讀取文字
var ch:Array = new Array(); //宣告ch1為陣列,以便判斷文字
function TextLoad(tloadevent) {

ch=loader.data.split("option"); //以option來排序陣列 ch1[0]=第一行 ch1[1]=第二行 以此類推

}
loader1.addEventListener(Event.COMPLETE,TextLoad1);//COMPLETE=資料讀取
loader.addEventListener(Event.COMPLETE,TextLoad);//COMPLETE=資料讀取
------------------------------------------------------------------------------------------------
另外一問 可以介紹專門寫flash與資料庫連結的書嗎?
就是用AS3來連結資料庫 可以任意抓取資料庫某個欄位的值然後show再flash文字欄位呈現
跟再flash文字欄位上面打東西 可以修改資料庫的值 也就是能雙向溝通的書
感恩!!

本篇文章發表於2012-01-04 14:48
== 簽名檔 ==
希望能夠多認識寫程式的朋友 可以互相討論!!
1樓
作者回應

han
檢舉此回應
不好意思 剛剛顏色沒註解好 重發一篇



ExchangeInfo.txt裡面的內容為
usertext //斷行
passtext

我想要先讀出裡面的內容
有用陣列來取得了
有個問題是 再function TextLoad1(tloadevent) {
}
裡面做trace(ch1[0])跟trace(ch1[1])是有值的

但是在外面做的話就會變成null

因為我想要在第二段能讀出trace(ch1[0])跟trace(ch1[1])的值
var Ureq:URLRequest=new URLRequest("http://61.46.121.3/login.aspx?passWord="+ch[0]+"&userName="+ch[1]+"");
請問怎麼讓他在外面也可以讀到trace(ch1[0])跟trace(ch1[1])------------------------------------------------------------------------------------------------------------
var Ureq1:URLRequest=new URLRequest("C:\\ITRI\\CNA\\ExchangeInfo.txt");
//使用 URLRequest 指定外部文字檔案

var loader1:URLLoader = new URLLoader(); //製作 URLLoader

loader1.load(Ureq1); //從檔案中讀取文字
var ch1:Array = new Array(); //宣告ch1為陣列,以便判斷文字
function TextLoad1(tloadevent) {

ch1=loader1.data.split("\n"); //以\n來排序陣列 ch1[0]=第一行 ch1[1]=第二行 以此類推

trace(ch1[0])//內容為usertext
trace(ch1[0])//內容為passtext
}

trace(ch1[0])//內容為NULL 我想要在外面也可以讀到usertext
trace(ch1[0])//內容為NULL 我想要在外面也可以讀到passtext


var Ureq:URLRequest=new URLRequest("http://61.46.121.3/login.aspx?passWord="+ch1[0]+"&userName="+ch1[1]+"");
//使用 URLRequest 指定外部文字檔案

var loader:URLLoader = new URLLoader(); //製作 URLLoader

loader.load(Ureq); //從檔案中讀取文字
var ch:Array = new Array(); //宣告ch1為陣列,以便判斷文字
function TextLoad(tloadevent) {

ch=loader.data.split("option"); //以option來排序陣列 ch1[0]=第一行 ch1[1]=第二行 以此類推

}
loader1.addEventListener(Event.COMPLETE,TextLoad1);//COMPLETE=資料讀取
loader.addEventListener(Event.COMPLETE,TextLoad);//COMPLETE=資料讀取
------------------------------------------------------------------------------------------------
另外一問 可以介紹專門寫flash與資料庫連結的書嗎?
就是用AS3來連結資料庫 可以任意抓取資料庫某個欄位的值然後show再flash文字欄位呈現
跟再flash文字欄位上面打東西 可以修改資料庫的值 也就是能雙向溝通的書
感恩!!
--------------------------------------------------------------------------------
本篇文章回覆於2012-01-04 14:52
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
回應

ahsac
檢舉此回應
程式記得用標籤排好, 不然看到眼花

基本上做法沒錯, 結果也沒錯, 關鍵是你在外面trace(ch1[0]);時, txt根本還沒讀好
URLRequest它不會等東西讀完才跑後面的程式, 而是一邊讀取一邊往下執行, 等到讀取完才會去執行 evenListener
所以寫程式時也得考慮到這方面的特性

以下程式, 你會發現trace先印出 outside ch1, 然後 inside ch1, 然後每秒一次traceCh1():
看看它們印出的順序, 你就明白了


專門講連結資料庫的書, 沒有
頂多就是一兩個章節介紹一下 amfphp, 或是zend amf, 主要在說明as3如何透過amf與其它語言溝通
然後你自己得去熟悉另一種語言去連結資料庫, 然後透過amf與as3溝通, 通常書上講的是php, 但其它語言也有相應的amf套件
本篇文章回覆於2012-01-04 20:52
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
作者回應

han
檢舉此回應
感謝 請問一下我在第一段讀出了"C:\\ITRI\\CNA\\ExchangeInfo.txt" 這裡面的內容
ch1[0]內容為usertext
ch1[1]內容為passtext
也就是var Ureq1:URLRequest=new URLRequest("C:\\ITRI\\CNA\\ExchangeInfo.txt"); 這段已經讀好了

我想再載入第二段
var Ureq:URLRequest=new URLRequest("http://61.46.121.3/login.aspx?passWord="+ch1[0]+"&userName="+ch1[1]+"");

因為這樣的話載入第二段ch1[0]跟ch1[1]會是空值
怎麼讓她可以在第二段"+ch1[0]+" 跟"+ch1[1]+"是usertext 跟 passtext
本篇文章回覆於2012-01-05 11:35
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
回應

ahsac
檢舉此回應
在 TextLoad1 這個function才去讀取第二段就好了
本篇文章回覆於2012-01-05 18:04
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.