テキストファイル入出力

  VBScript + BatchHelper オブジェクト



CreateObject は、WSH(.vbs or .wsf) では Wscript.CreateObject を使用し、
ASP では Server.CreateObject を使用します。

※ IE( 含む HTA ) 上で動かす場合は、CreateObject のみ

TextIo.vbs :
エクスプローラからダブルクリックするか、cscript.exe TextIo.vbs 、または wscript.exe TextIo.vbs


  
' **********************************************************
' オブジェクト作成
' **********************************************************
Set Fs = CreateObject( "Scripting.FileSystemObject" )
Set Lbox = CreateObject( "Lbox.BatchHelper" )

' **********************************************************
' ターゲット ファイル
' **********************************************************
InFile = Lbox.OpenFileName()
if InFile = "" then
	Lbox.MsgOk( "入力ファイル選択でキャンセルされました" )
	Wscript.Quit
end if
OutFile = Lbox.SaveFileName()
if OutFile = "" then
	Lbox.MsgOk( "出力ファイル選択でキャンセルされました" )
	Wscript.Quit
end if

' **********************************************************
' ファイルオープン
' **********************************************************
on error resume next
Set InObj = Fs.OpenTextFile( InFile, 1 )
if Err.Number <> 0 then
	Lbox.MsgOk( Err.Description )
	Wscript.Quit
end if
on error goto 0
Set OutObj = Fs.OpenTextFile( OutFile, 2, True )

' **********************************************************
' 処理
' **********************************************************
Do While not InObj.AtEndOfStream
	Buffer = InObj.ReadLine
	OutObj.WriteLine Buffer
Loop

' **********************************************************
' ファイルクローズ
' **********************************************************
OutObj.Close
InObj.Close
  



  PHP + BatchHelper オブジェクト



cliバージョンを使用して下さい (通常のphpでは、タイムアウトが発生します)
C:\php\cli\php.exe TextIo.php

  
<?
# **********************************************************
# オブジェクト作成
# **********************************************************
$Lbox = new COM( "Lbox.BatchHelper" );

# **********************************************************
# ターゲット ファイル
# **********************************************************
$InFile = $Lbox->OpenFileName();
if ( $InFile == "" ) {
	$Lbox->MsgOk( "入力ファイル選択でキャンセルされました" );
	exit();
}
$OutFile = $Lbox->SaveFileName();
if ( $OutFile == "" ) {
	$Lbox->MsgOk( "出力ファイル選択でキャンセルされました" );
	exit();
}

# **********************************************************
# ファイルオープン
# **********************************************************
$InHandle = @fopen( $InFile, "rt" );
if ( !$InHandle ) {
	$Lbox->MsgOk( "入力ファイルをオープンできません" );
	exit();
}
$OutHandle = @fopen( $OutFile, "wt" );

# **********************************************************
# 処理
# **********************************************************
while ( !(feof( $InHandle )) ) {
	$Buffer = fgets( $InHandle );
	fputs( $OutHandle, "$Buffer" );
}

# **********************************************************
# ファイルクローズ
# **********************************************************
fclose( $OutHandle );
fclose( $InHandle );
?>
  



  ActivePerl + BatchHelper オブジェクト

c:\perl\bin\perl.exe TextIo.cgi

  
# **********************************************************
# オブジェクト使用宣言
# **********************************************************
use Win32::OLE;

# **********************************************************
# オブジェクト作成
# **********************************************************
$Lbox = Win32::OLE->new( "Lbox.BatchHelper" );

# **********************************************************
# ターゲット ファイル
# **********************************************************
$InFile = $Lbox->OpenFileName();
if ( $InFile eq "" ) {
	$Lbox->MsgOk( "入力ファイル選択でキャンセルされました" );
	exit();
}
$OutFile = $Lbox->SaveFileName();
if ( $OutFile eq "" ) {
	$Lbox->MsgOk( "出力ファイル選択でキャンセルされました" );
	exit();
}

# **********************************************************
# ファイルオープン
# **********************************************************
$ret = eval { $InHandle = open( IN_FILE, $InFile ) };
if ( !$ret ) {
	$Lbox->MsgOk( "入力ファイルをオープンできません" );
	exit();
}
$OutHandle = open( OUT_FILE, ">" . $OutFile );

# **********************************************************
# 処理
# **********************************************************
while ( $Buffer = <IN_FILE> ) {
	print OUT_FILE $Buffer;
}

# **********************************************************
# ファイルクローズ
# **********************************************************
close( OUT_FILE );
close( IN_FILE );
  










  infoboard   管理者用   
このエントリーをはてなブックマークに追加





フリーフォントWEBサービス
SQLの窓WEBサービス

SQLの窓フリーソフト

素材

一般WEBツールリンク

SQLの窓

フリーソフト

JSライブラリ