.txt ファイルの正確な位置に文字列があるかどうかを知る必要があります。Contains メソッドを使用して具体的な文字列を見つける方法は知っていますが、ファイル全体を検索する必要がないため (文字列は常に同じ場所にあります)、最も迅速な解決策を見つけようとしています。
if (searchedText.Contains(item))
{
Console.WriteLine("Found {0}",item);
break;
}
ありがとう
.txt ファイルの正確な位置に文字列があるかどうかを知る必要があります。Contains メソッドを使用して具体的な文字列を見つける方法は知っていますが、ファイル全体を検索する必要がないため (文字列は常に同じ場所にあります)、最も迅速な解決策を見つけようとしています。
if (searchedText.Contains(item))
{
Console.WriteLine("Found {0}",item);
break;
}
ありがとう
UTF-8 であり、ASCII であることが保証されていない場合は、関連する文字数を読み取る必要があります。何かのようなもの:
using (var reader = File.OpenText("test.txt"))
{
char[] buffer = new char[16 * 1024];
int charsLeft = location;
while (charsLeft > 0)
{
int charsRead = reader.Read(buffer, 0, Math.Min(buffer.Length,
charsLeft));
if (charsRead <= 0)
{
throw new IOException("Incomplete data"); // Or whatever
}
charsLeft -= charsRead;
}
string line = reader.ReadLine();
bool found = line.StartsWith(targetText);
...
}
ノート:
if(searchedText.SubString(i, l).Contains(item))
はi
開始インデックスで、l
検索する文字列の長さです。
含むを使用しているため、 にいくらかの余裕がありl
ます。