私は特定のファイルの場所でファイルを検索して返すことができます。私はまた、のようなファイル名から数列を返す機能を持っている:C#特定の長さの文字列を確認してください
public List<AvailableFile> GetAvailableFiles(string rootFolder)
{
List<AvailableFile> files = new List<AvailableFile>();
if (Directory.Exists(rootFolder))
{
Log.Info("Checking folder: " + rootFolder + " for files");
try
{
foreach (string f in Directory.GetFiles(rootFolder))
{
files = FileUpload.CreateFileList(f);
var getNumbers = new String(f.Where(Char.IsDigit).ToArray());
System.Diagnostics.Debug.WriteLine(getNumbers);
}
}
catch (System.Exception excpt)
{
Log.Fatal("GetAvailableFiles failed: " + excpt.Message);
}
}
return files;
}
私が今やりたいことだけを正確に8文字の長さの数字の列を返します。たとえば、名前がNew File1 12345678 123
のファイルは、12345678
を返すことのみを心配しています。
これを達成するために私の方法を変更するにはどうすればよいですか?
Fに正規表現を使用し、ファイル名は、8桁の数字(例えば12345678a12345678.txt) – tolanj
の複数の配列を有しているとどうなるかを考える必要がありますあなたが実際に望む一連の数字の前に別の数字があるという事実は、物事を楽にしません。あなたは112345678123のようなものを手に入れてください。 – MetaColon
getNumbers変数は数値文字列ですか?あなたは単に 'getNumbers.Length == 8'を実行できません。 –