イントラマートでファイルから1行ずつテキストを読み込む
イントラマートのスクリプト開発でFileオブジェクト,VirtualFileオブジェクトのどちらにもファイルから1行ずつテキストを読み込むメソッドが見つからなかったのでJavaのクラスを呼び出して実現します。
イントラマートとは
株式会社NTTデータイントラマート社が開発・販売している、Webアプリケーションシステムのシステム共通基盤(統合型フレームワーク)で、国内の著名企業を中心に6,000社以上に導入されています。
イントラマートを導入することにより、Webシステム開発における短納期・低コスト・標準化推進・品質向上を実現できます。
詳しくはこちらをご覧ください。
イントラマートでファイルから1行ずつテキストを読み込む
実際のソースファイルです。
try{
var filename = "c:/imart/storage/aaa.txt" ;
var file = new java.io.File( filename ) ;
var br = new java.io.BufferedReader( new java.io.FileReader( file )) ;
var str = "" ;
while( 1 ){
str = new String( ( br.readLine().toString()) ) ;
if( str == null ){
br.close() ;
break ;
}
Debug.print( str ) ;
} catch( e ) {
Module.alert.write( e + "\n" + filename + "ファイルを読み込めませんでした。" ) ;
}
Javascriptからも問題なくBufferedReaderなどが呼び出せるので、大きなファイルを読み込んだ時に「java.lang.OutOfMemoryError: Java heap space」が出て処理が出来なかったので1行ずつ読んでみました。






