非常基本的事情,我正在努力完成。
A将文件(图像)的源存储为字符串(简单路径)。
我想将该文件复制到自定义目标位置。更准确地说,是位于应用程序根目录中的文件夹名称映像。我查阅了文档,所有的文档都提到了FolderItem类,不幸的是,我搞不清楚。
有什么想法吗?
发布于 2013-07-13 23:56:55
FolderItem类有一个内置的FileCopy方法,我建议您学习FolderItem,因为从长远来看,它使文件处理变得容易得多,因为这确实是在Xojo/Real Studio中处理文件的惟一方法。
通常,folderitem类是使用GetFolderItem方法初始化的:
dim f as folderitem = GetFolderItem("somefile.pdf")这个基本函数在与可执行文件相同的目录中查找pdf文件。如果文件在其他地方,您可以使用绝对路径,如"C:/SomeFolder/somefile.pdf“。
有一些被禁止访问的位置(应用程序数据、首选项等),访问它们的最简单方法是使用SpecialFolders对象。如果您的文件位于Application Data文件夹中,则应访问该文件夹:
dim f as folderitem = SpecialFolder.ApplicationData.child("somefile.pdf")SpecialFolder.ApplicationData返回一个folderitem,子级查找该文件。Folderitem的子方法和父方法非常重要。
在https://docs.xojo.com/index.php/GetFolderItem上有很多关于如何使用GetFolderItem的例子
SpecialFolder在https://docs.xojo.com/index.php/SpecialFolder上的解释
如果您想要视频培训,订阅者可以在http://www.bkeeney.com/XojoTraining/xojotraining.cgi上获得超过40小时的Real Studio和Xojo培训
发布于 2013-07-14 05:34:41
如果您不习惯面向对象的语法,只需将FolderItem看作是copy命令所在的位置。因此,在下面,我们创建两个FolderItem对象:一个用于源文件,另一个用于目标文件夹。完成后,我们可以使用FolderItem的CopyFileTo()方法来复制文件:
dim s as String
dim source as FolderItem
dim dest as FolderItem
s="C:\test.jpg"
source=GetFolderItem(s)
dest=GetFolderItem("C:\image")
source.CopyFileTo(dest)发布于 2013-07-14 08:28:28
FolderItem class可以表示计算机上的任何文件或文件夹。要为特定绝对路径创建FolderItem实例,请将该路径传递给GetFolderItem方法并存储结果:
Dim SourceFile As FolderItem
SourceFile = GetFolderItem("C:\ExampleFolder\ExampleFile.txt", PathTypeAbsolute)一旦构建了FolderItem,就可以修改它的属性并调用它的方法来影响对底层文件或目录的更改。
要将文件复制或移动到另一个目录,您需要获取代表目标目录的FolderItem。根据目的地的不同,您可以使用多种方法之一来获取目的地FolderItem。
例如,
Dim destination As FolderItem
destination = GetFolderItem("C:\DestinationExample\", PathTypeAbsolute)或者,使用SpecialFolder模块:
destination = SpecialFolder.Desktop 'the user's desktop directory或者,使用App class的ExecutableFile property的parent文件夹
destination = App.ExecutableFile.Parent 'your app's directory设置好源和目标FolderItems后,只需调用源FolderItem的CopyFileTo或MoveFileTo方法:
Dim SourceFile As FolderItem
SourceFile = GetFolderItem("C:\ExampleFolder\ExampleFile.txt", PathTypeAbsolute)
Dim destination As FolderItem
destination = GetFolderItem("C:\DestinationExample\", PathTypeAbsolute)
SourceFile.MoveFileTo(destination)
' or
SourceFile.CopyFileTo(destination)请注意,CopyFileTo和MoveFileTo方法不能用于移动或复制目录,只能用于文件。
https://stackoverflow.com/questions/17630154
复制相似问题