| Package | jp.naggg.net |
| Class | public class CSVLoader |
| Inheritance | CSVLoader flash.net.URLLoader |
| Property | Defined By | ||
|---|---|---|---|
| delimiter : String = , デリミタ、デフォルトはカンマ ","、タブを渡すときは "\t" を指定します. | CSVLoader | ||
| parseProgress : Number [read-only] パースの進捗、0 ~ 1 の値をとります. | CSVLoader | ||
| parseSpeed : int = 0 パース速度、PARSE_INTERVAL ごとにパースする CSV の行数です.0 を指定するとすべてをパースします. | CSVLoader | ||
| Property | Defined By | ||
|---|---|---|---|
| mode : int = 0 内部的なモード、0: 何もしない、1: ロード中、2: パース中 | CSVLoader | ||
| parsedData : Array パース実行中に扱う、一時データ格納先、パース後は null になります. | CSVLoader | ||
| _parseProgress : Number = 0 | CSVLoader | ||
| parseTimer : Timer 遅延パースタイマー. | CSVLoader | ||
| source : Array パース対象データ(多重配列)、一時的に保持されて、パース完了時に null になります. | CSVLoader | ||
| Method | Defined By | ||
|---|---|---|---|
CSVLoader(request:URLRequest = null, delimiter:String = ,, parseSpeed:int = 0)
CSVLoader オブジェクトを生成します.
| CSVLoader | ||
cloneCSV():Array
CSV のデータを複製した多重配列を返します.ByteArray による複製を行います.
| CSVLoader | ||
load(request:URLRequest):void [override]
CSVLoader クラスは、このプロパティまたはメソッドを実装しません.load() ではなく loadCSV() を使用してください.
| CSVLoader | ||
loadCSV(request:URLRequest = null, delimiter:String = ,, parseSpeed:int = 0):void
CSV の読込を開始します.
このクラスでは、load() ではなく loadCSV() を使用してください.
これは引数に設定が必要なものがあるからです.
| CSVLoader | ||
parseCSV(source:String, delimiter:String = ,, parseSpeed:int = 0):void
CSVの文字列をパースを二重配列を生成します.
生成されたデータは、data プロパティよりアクセスが可能となります.
例)data[0][0]
また、パースは対象文字列が大きいほど処理に時間を要しますので、
parseSpeed で一度のパースで処理する行の数を指定することで遅延パースをかけることができます.
パース完了時に、CSVLoader.PARSE_COMPLETE イベントを配信します.
行ごとの遅延パースは可能ですが、改行コードの統一(\n)はその前に実行されるので、
あらかじめ取り込むデータの改行コードを "\n" に統一しておくと処理が一層早くなります.
| CSVLoader | ||
toString():String [override]
文字列表現を返します.
呼び出されると data プロパティ(多重配列)を文字列に変換する、必要でなければ呼び出さないよう注意してください.
| CSVLoader | ||
| Method | Defined By | ||
|---|---|---|---|
completeHandler(evt:Event):void
CSV 読込み完了時の内部処理、最高の優先度で登録されます.
| CSVLoader | ||
openHandler(evt:Event):void
CSV 読込み開始時の内部処理、最高の優先度で登録されます.
| CSVLoader | ||
parseAllLines():void
まるっとパースして data プロパティに反映します.
| CSVLoader | ||
parseTimerTimerCompleteHanlder(evt:TimerEvent):void
遅延パースのメインロジック
| CSVLoader | ||
removeEmptyLine():Boolean
data プロパティに格納すべき多重配列の最後のデータが空であれば削除します.
| CSVLoader | ||
| Event | Summary | Defined By | ||
|---|---|---|---|---|
| loadCSV() による読込が完了した時に送出されます. | CSVLoader | |||
| loadCSV() により読込が開始した時に送出されます.EVEN.OPEN の直後になります. | CSVLoader | |||
| parseCSV() でのパースが完了した時に送出されます. | CSVLoader | |||
| parseCSV() によるパースが開始した時に送出されます. | CSVLoader | |||
| parseCSV() での遅延パースを行う場合、一定間隔ごとに送出されます. | CSVLoader | |||
| Constant | Defined By | ||
|---|---|---|---|
| LOAD_COMPLETE : String = loadComplete [static] | CSVLoader | ||
| LOAD_INIT : String = loadInit [static] | CSVLoader | ||
| PARSE_COMPLETE : String = parseComplete [static] | CSVLoader | ||
| PARSE_INIT : String = parseInit [static] | CSVLoader | ||
| PARSE_INTERVAL : uint = 50 [static] パースを実行するタイマーの間隔です.parseSpeed の値で 0 以下を指定した場合に有効となります. | CSVLoader | ||
| PARSE_PROGRESS : String = parseProgress [static] | CSVLoader | ||
| _parseProgress | property |
protected var _parseProgress:Number = 0| delimiter | property |
public var delimiter:String = ,デリミタ、デフォルトはカンマ ","、タブを渡すときは "\t" を指定します.
| mode | property |
protected var mode:int = 0内部的なモード、0: 何もしない、1: ロード中、2: パース中
| parsedData | property |
protected var parsedData:Arrayパース実行中に扱う、一時データ格納先、パース後は null になります.
| parseProgress | property |
parseProgress:Number [read-only] パースの進捗、0 ~ 1 の値をとります.
public function get parseProgress():Number| parseSpeed | property |
public var parseSpeed:int = 0パース速度、PARSE_INTERVAL ごとにパースする CSV の行数です.0 を指定するとすべてをパースします.
| parseTimer | property |
protected var parseTimer:Timer遅延パースタイマー.
| source | property |
protected var source:Arrayパース対象データ(多重配列)、一時的に保持されて、パース完了時に null になります.
| CSVLoader | () | Constructor |
public function CSVLoader(request:URLRequest = null, delimiter:String = ,, parseSpeed:int = 0)CSVLoader オブジェクトを生成します.
Parametersrequest:URLRequest (default = null) — CSVデータのURLRequest、指定すると直ちに読み込み操作が開始されます
| |
delimiter:String (default = ,) — デリミタ、プロパティに反映されます
| |
parseSpeed:int (default = 0) — パース速度、プロパティに反映されます
|
| cloneCSV | () | method |
public function cloneCSV():ArrayCSV のデータを複製した多重配列を返します.ByteArray による複製を行います.
ReturnsArray — 複製された CSV データ(多重配列)
|
| completeHandler | () | method |
protected function completeHandler(evt:Event):voidCSV 読込み完了時の内部処理、最高の優先度で登録されます.
Parameters
evt:Event |
| load | () | method |
override public function load(request:URLRequest):voidCSVLoader クラスは、このプロパティまたはメソッドを実装しません.load() ではなく loadCSV() を使用してください.
Parameters
request:URLRequest |
| loadCSV | () | method |
public function loadCSV(request:URLRequest = null, delimiter:String = ,, parseSpeed:int = 0):voidCSV の読込を開始します. このクラスでは、load() ではなく loadCSV() を使用してください. これは引数に設定が必要なものがあるからです.
Parameters
request:URLRequest (default = null) — 対象CSVを読み込むリクエストです.
| |
delimiter:String (default = ,) — CSV のデリミタです.デフォルトは "," です.
| |
parseSpeed:int (default = 0) |
| openHandler | () | method |
protected function openHandler(evt:Event):voidCSV 読込み開始時の内部処理、最高の優先度で登録されます.
Parameters
evt:Event |
| parseAllLines | () | method |
protected function parseAllLines():voidまるっとパースして data プロパティに反映します.
| parseCSV | () | method |
public function parseCSV(source:String, delimiter:String = ,, parseSpeed:int = 0):voidCSVの文字列をパースを二重配列を生成します. 生成されたデータは、data プロパティよりアクセスが可能となります. 例)data[0][0] また、パースは対象文字列が大きいほど処理に時間を要しますので、 parseSpeed で一度のパースで処理する行の数を指定することで遅延パースをかけることができます. パース完了時に、CSVLoader.PARSE_COMPLETE イベントを配信します. 行ごとの遅延パースは可能ですが、改行コードの統一(\n)はその前に実行されるので、 あらかじめ取り込むデータの改行コードを "\n" に統一しておくと処理が一層早くなります.
Parameters
source:String — CSV文字列
| |
delimiter:String (default = ,) — デリミタ
| |
parseSpeed:int (default = 0) — パース速度
|
| parseTimerTimerCompleteHanlder | () | method |
protected function parseTimerTimerCompleteHanlder(evt:TimerEvent):void遅延パースのメインロジック
Parameters
evt:TimerEvent |
| removeEmptyLine | () | method |
protected function removeEmptyLine():Booleandata プロパティに格納すべき多重配列の最後のデータが空であれば削除します.
ReturnsBoolean — 削除したかどうかを返します、削除する必要がなければ false を返します.
|
| toString | () | method |
override public function toString():String文字列表現を返します. 呼び出されると data プロパティ(多重配列)を文字列に変換する、必要でなければ呼び出さないよう注意してください.
ReturnsString — CSV配列すべてを含む文字列
|
| loadComplete | Event |
jp.naggg.net.CSVLoaderjp.naggg.net.CSVLoader.LOAD_COMPLETEloadCSV() による読込が完了した時に送出されます.
| loadInit | Event |
jp.naggg.net.CSVLoaderjp.naggg.net.CSVLoader.LOAD_INITloadCSV() により読込が開始した時に送出されます.EVEN.OPEN の直後になります.
| parseComplete | Event |
jp.naggg.net.CSVLoaderjp.naggg.net.CSVLoader.PARSE_COMPLETEparseCSV() でのパースが完了した時に送出されます.
| parseInit | Event |
jp.naggg.net.CSVLoaderjp.naggg.net.CSVLoader.PARSE_INITparseCSV() によるパースが開始した時に送出されます.
| parseProgress | Event |
jp.naggg.net.CSVLoaderjp.naggg.net.CSVLoader.PARSE_PROGRESSparseCSV() での遅延パースを行う場合、一定間隔ごとに送出されます.
| LOAD_COMPLETE | Constant |
public static const LOAD_COMPLETE:String = loadComplete| LOAD_INIT | Constant |
public static const LOAD_INIT:String = loadInit| PARSE_COMPLETE | Constant |
public static const PARSE_COMPLETE:String = parseComplete| PARSE_INIT | Constant |
public static const PARSE_INIT:String = parseInit| PARSE_INTERVAL | Constant |
public static const PARSE_INTERVAL:uint = 50パースを実行するタイマーの間隔です.parseSpeed の値で 0 以下を指定した場合に有効となります.
| PARSE_PROGRESS | Constant |
public static const PARSE_PROGRESS:String = parseProgress
import jp.naggg.net.CSVLoader;
var csvLoader:CSVLoader = new CSVLoader();
csvLoader.addEventListener(CSVLoader.LOAD_COMPLETE, csvLoaderLoadCompleteHandler);
csvLoader.addEventListener(CSVLoader.PARSE_COMPLETE, csvLoaderParseCompleteHandler);
csvLoader.addEventListener(Event.COMPLETE, csvLoaderCompleteHandler);
csvLoader.loadCSV(new URLRequest("csv.csv"), ",", 100);
function csvLoaderCompleteHandler(evt:Event):void{
trace(csvLoader.progress); // 1
trace(csvLoader);
// 1 aaa,bbb
// 2 ccc,ddd
// 3 eee,fff
}
function csvLoaderLoadCompleteHandler(evt:Event):void{}
function csvLoaderParseCompleteHandler(evt:Event):void{}