0
StreamReader reader = new StreamReader("C:\\ABC\\XYZ.txt");

streamreader を使用してファイルを読み込んでいます。ファイルは HL7 ファイルです

MSH|^~\&|ABC|000|ABC|ABC|0000||ABC|000|A|00
PID|1|000|||ABC||000|A||||||||||
PV1|1|O||||||||||||||||||||||||||||||||||||||||||
OBR|1|||00||00|00|||||||||||ABC|00|0|0||||A|||||00||ABC|7ABC||ABC
OBX|1|ABC|ABC|1|SGVsbG8=

OBX の行番号を見つける必要があります。ファイルには、各行の末尾に区切り文字があります。たとえば、MSH|^~\&|ABC|000|ABC|ABC|0000||ABC|000|A|00*CR* LF

これが必要な理由は、OBX フィールド内の Base64 を取得し、それをファイルとして書き出す必要があるためです。私のリーダーは常にストリームになります。ファイル ストリームは使用できません。上記のコードは一例です。次の実装は BizTalk で作成され、読み取るファイルはストリームになります。これは、BizTalk がファイルの情報にアクセスできるようにするためです。

4

1 に答える 1

1
var lineNum = File.ReadLines(fname)
                .Select((s, line) => new { s, line })
                .First(x => x.s.StartsWith("OBX|"))
                .line;
于 2013-09-12T16:24:17.367 に答える