我正在将此代码的 VB.net 转换为 C#:
Dim files() As String
files = Directory.GetFiles("E:\\text", "*.txt")
Dim filename As String
Dim file As String
For Each file In files
filename = Path.GetFileName(file)
我在 C# 中尝试过,但出现错误
Type and identifier are both required in a foreach statement ERROR in csharp
string[] files;
files = Directory.GetFiles("E:\\text", "*.txt");
string[] filenameMove;
string filename;
string file;
foreach (file in files)
filename = Path.GetFileName(file);
最佳答案
尝试
foreach(var file in files)
您需要指定要循环的类型或使用 var
虽然您已经声明了一个名为 file 的变量。所以你必须使用不同的名称
foreach(var f in files)
{
filename = Path.GetFileName(f);
}
(尽管根据您的逻辑,您只是在每次迭代时覆盖文件名,所以除非您只想要最后一个文件名,否则我不确定它的目的是什么)。
关于c# - csharp 中的 foreach 语句错误中都需要类型和标识符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15165795/