私は関数の一番上にこれを持っています:
string n = "";
string test = "T256=" + n;
ただし、テストは「T256 =」だけです
文字列 n で n = "\"" を実行している場合。
test は "T256=\" ですが、\ は引用を意味しますか?
たとえば、次の場合に空の文字列を取り出すにはどうすればよいですか。
T256="Hello" なので、Hello だけを取り出すことができますが、T256="" がある場合、それはどういう意味ですか? 私のプログラムは空の文字列を飛び越えているので ""
しかし、私はそれを使用する必要があります。
たとえば、私のファイルでは次のようになります。
T256="hello"
T256=""
T256=""
T256="hi"
では、どうすれば2つの T256="" を覚えておくことができますか? 最初の空の T256="" に次の単語を入れない場合は、次のようになります。
T256="hello"
T256="hi"
そして、それはあるべき姿ではありません。次の形式にする必要があります。これは適切な形式です。
T256="hello"
T256=""
T256=""
T256=hello"
だから、これが私のコードで、テキストを取り出していますが、何らかの理由で2つのタグの間にテキストがない場所を取り出していません。
string startTag = "T256=\""; string endTag = "\"";
この 2 つのタグの間にテキストがある場合は削除されますが、このタグの間にテキストがない場合は、タグ間にテキストがある次の行にジャンプします。
"" の間が空の場合でも、 T256="" で任意の行を取得する必要があります
したがって、テキスト ファイルにはスペースまたは "" が表示されます。たとえば、テキスト ファイルは次のようになります。
Hello
""
Hi
""
""
Hello
または、「」でない場合は空のスペースで、テキストを元に戻すと、スペースまたは空の文字列も元に戻す必要があります。
これは、テキストを取り出すコードです。
private void parseText(string originalFile, BackgroundWorker worker)
{
FormText("Parsing Text");
int lineNumber = 0;
string startTag = "T256=\"";
string endTag = "\"";
int index = 0;
int startTagWidth = startTag.Length;
int endTagWidth = endTag.Length;
int fileLength = originalFile.Length;
w = new StreamWriter(@"d:\testingdeponias.txt");
while (true)
{
if (index > originalFile.LastIndexOf(startTag))
{
break;
}
int startTagIndex = originalFile.IndexOf(startTag, index);
int stringIndex = startTagIndex + startTagWidth;
index = stringIndex;
int endTagIndex = originalFile.IndexOf(endTag, index);
int stringLength = endTagIndex - stringIndex;
if (stringLength == 0)
{
}
else
{
//worker.ReportProgress(20);
string test = originalFile.Substring(stringIndex, stringLength);
if (test == "")
{
MessageBox.Show(test);
}
しかし、テストは "" ではありません