投稿日 | : 2003/04/27(Sun) 23:27 |
投稿者 | : 花ちゃん |
Eメール | : |
URL | : |
タイトル | : Re: テキストファイルのマージ |
チョット変ったやり方を
Private Sub Command1_Click()
Dim strTextLine As String
Dim intFileNo As Integer
Dim CFileLen As Long
'AファイルとBファイルを1つにマージしてCファイルを作成
Shell "command.com /c copy e:\AFile.txt + e:\BFile.txt e:\CFile.txt", 0
Do While CFileLen < 1 'コピーされるまで待つ
CFileLen = Len(Dir$("e:\CFile.txt"))
DoEvents
Loop
'別途プロパティで設定
'List1.Sorted = True
intFileNo = FreeFile
'一つにまとめたCFileを読込ListBoxにソートして表示
Open "e:\CFile.txt" For Input As #intFileNo
Do While Not EOF(intFileNo)
Line Input #intFileNo, strTextLine
'空白行を除く
If Len(Trim$(strTextLine)) > 0 Then
List1.AddItem strTextLine
End If
Loop
Close #intFileNo
'後はリストボックス内を検索して同じ物があれば削除する
'ここの逆引きヘルプの
'リストボックス内を先頭一致検索・完全一致検索(APIを使って)
'を使ってもいいし、ソートしているので隣り合ったものが同じか
'同かを調べ、同じなら削除する
End Sub
因みに、上記方法は、CSVファイルでも同様に操作できます。