我想访问SD卡文件并读取该文件的所有内容。首先,我无法写入插入计算机的SD卡的路径,因为可以更改SD卡名称。此外,我想在我的目录路径中获取所有文件名。
目录中有太多文件,它们以“1.txt”,“2.txt”等数字命名。但我必须访问最后一个文件并读取最后一个文件行。我正在使用下面的代码。有什么建议吗?
public void readSDcard()
{
//here i want to get names all files in the directory and select the last file
string[] fileContents;
try
{
fileContents = File.ReadAllLines("F:\\MAX\\1.txt");// here i have to write any sd card directory path
foreach (string line in fileContents)
{
Console.WriteLine(line);
}
}
catch (FileNotFoundException ex)
{
throw ex;
}
}
答案 0 :(得分:3)
.NET Framework没有提供识别的方法,哪个驱动器是SD卡(我怀疑有一种可靠的方法可以这样做,至少没有非常低级的编程,例如查询系统驱动程序) 。您可以做的最好是检查DriveType
的{{1}}属性是否等于DriveInfo
,但这也会选择所有闪存驱动器等。
但即使这样,您还需要一些其他信息来选择合适的SD卡(想想,计算机中可能插入了多张SD卡)。如果SD卡的卷标始终相同,则可以使用它来选择正确的驱动器。否则,您将不得不询问用户,他希望使用哪些可移动驱动器,如下所示。
问题没有说明,DriveType.Removable
是什么意思。它是上次创建的文件,上次修改的文件,操作系统枚举的最后一个文件,还是文件名最大的文件?所以我假设你想要一个数量最多的文件。
last file