0

埋め込まれた画像を表示するには、[画像を表示]を選択します。写真を表示

多くのtxtファイルがあり、SQLDBに挿入するためにそれらからデータを抽出する必要があります

ファイルは次のようなものです。

「説明ユーザーの時間フィールド」

"------------- ------ ---------- -----------"

「XXXXYY0112:01:01サンプル」

これはある種の列のようなものであり、ルールは各列の位置と長さのみであり、各列ヘッダーの説明の下にある行(-----)によって決定されます。

各行の位置XからYまでの文字列を抽出し、それを別のファイルまたはどこかに書き込む必要があります(これは難しくありません)

そのtxtの各行を解析し、txtのすべての行の位置xから位置Yに文字列を返すコードが必要です

vbscriptまたはC++/#...またはpowershellでこれを行うにはどうすればよいですか?最終的には、これを自動的に抽出するexeまたはバッチを実行します

私はコーディングにあまり詳しくないので、助けていただければ幸いです

4

1 に答える 1

0

これは、区切り文字を使用して分割する単純な vbscript ルーチンです。

const ForWriting = 2, ForReading = 1
set oFso = CreateObject("Scripting.FileSystemObject")
set oInFile = oFso.OpenTextFile(sFilenameIn, ForReading)
do While oInFile.AtEndOfStream <> True
    sLine = oInFile.readline 'skip the first tow lines or use a condition to check for content
    sLine = oInFile.readline
    sLine = oInFile.readline
    a = split(sLine," ") 'here the delimiter is a space, parse line in array
    field1 = a(1) 'YY01 for the first data line
    field2 = a(2) '12:01:01 for the first data line
    'do something with the data
loop

区切り文字を使用できない場合は、次のようなものを使用します

field1 = mid(sLine, 6, 4) 'YY01 for the first data line
于 2012-04-12T11:27:51.963 に答える