1

我正在尝试将程序从 Linux 转换为在 Windows 上使用,它调用test -f, 或test -d在 Linux 上。我需要它在 Windows 上做同样的事情。是否有内置命令,或者我可以使用其他程序来做同样的事情?

我正在使用 FreeBASIC 编程(可怕,但这是我得到的)。

编辑:外部程序是这里的最佳选择。我查看了API,它并不好。

4

3 回答 3

2

以前从未听说过 FreeBasic,但在查看帮助时,有一个DIR命令支持将fbDirectory其用作要过滤的属性模式之一。
在该页面上稍微往下看,我刚刚看到他们有一个示例,用于检查找到的对象是文件还是目录。看看这里,看看那个页面上的第二个例子。

不确定这些测试命令究竟做了什么,但如果你想测试一个特定的对象是否是一个目录,你应该可以调用Dir("exactname", fbDirectory, something)我想。然后您可以通过在某处放置 Not 来测试文件(假设 FreeBasic 支持)。

编辑:为了制作您自己的工具,这里有一个示例,它显示了一个可以轻松更改以查找目录或不查找目录的微型 C++ 应用程序。在示例中查找 ,FindFirstFile然后不久它会检查它是否是只读的,可以为 FILE_ATTRIBUTE_DIRECTORY 更改它。

于 2010-06-18T21:39:36.067 回答
2

http://unxutils.sourceforge.net/

你可以像在linux下一样使用test.exe

于 2010-07-10T17:46:27.297 回答
1

不确定 FreeBASIC,你看过 vbscript 吗?您可以使用 FileSystemObject

Dim fso, msg
Set fso = CreateObject("Scripting.FileSystemObject")
If (fso.FolderExists(fldr)) Then
   'Do Something here
Else
   'Do Something
End If
If (fso.FileExists(filespec)) Then
   'Do Something here
Else
   'Do Something
End If
于 2010-06-18T21:35:17.930 回答