0

我正在 Genexus X Evolution 3 (iOS) 中开发一个移动应用程序,它执行我制作的用于收集运动信息的外部对象方法 (objective-c)。所有这些信息都会生成一个 CSV 文件,我想用 Genexus 抓取该文件并将其发送到在线服务器。我的问题是我找不到存储文件的目录。我知道 Genexus 在“Documents”目录中创建了一个“GXData”目录,以避免使用创建离线数据库的同一目录,但我不知道如何从 Genexus 中的程序访问该目录,所以请如果有人能帮我解决这个问题,我将永远欠你的债!

最好的祝福!

4

2 回答 2

2

iOS在开发过程中无法知道应用程序的安装目录。

这就是为什么Directory数据类型定义了三个静态属性,供 GeneXus 开发人员使用。此属性与平台无关,与安装无关,因此您可以安全地使用它们。

定义的属性是:

  • ApplicationDataPath: 指向 Documents/GXData/
  • ExternalFilesPath: 和 iOS 上的 ApplicationDataPath 一样,Android 的外部内存路径
  • TemporaryFilesPath:应用程序的 tmp/ 文件夹。

你可以写例如

&file.Source = Directory.TemporaryFilesPath + &file.Separator + "myFile.txt"

where&file被定义为 type File

然后,您可以使用以下命令读取文件的内容:

&fileContent = &file.ReadAllText()

请注意,如果文件太大,可能会导致内存或性能问题。

于 2014-12-02T18:05:09.433 回答
0

您必须使用 Directory 数据类型的静态属性才能访问设备的本地目录。使用这些属性,您可以像使用任何其他 GeneXus 应用程序一样轻松地使用设备的文件系统。

如果您想了解有关这些属性和许多其他注意事项的更多信息,请参阅:http ://wiki.genexus.com/commwiki/servlet/hwikibypageid?27388

于 2014-12-22T18:49:52.977 回答