首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Xojo MacOs Vs.Windows?EndOFLine问题

Xojo MacOs Vs.Windows?EndOFLine问题
EN

Stack Overflow用户
提问于 2019-05-22 21:11:24
回答 2查看 109关注 0票数 1

因此,我在Xojo(MacOS)上创建了一个使用EndofLine解析段落的程序。但是,当我在Windows操作系统上运行它时,它根本不会解析它。Window操作系统是否识别Xojo中的EndofLine或Chr(10)+Chr(13)?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-05-22 21:36:55

Xojo的EndOfLine常量根据您使用的平台的不同而有所不同。

你有两个选择来处理这个问题:

显式使用特定于平台的常量:

代码语言:javascript
复制
EndOfLine.Windows gives CR+LF
EndOfLine.Unix gives LF

更好的方法,特别是当你从程序外部导入数据时,例如从文件或网络套接字读取数据时,更好的方法是标准化内部使用的行分隔符,如下所示:

代码语言:javascript
复制
normalizedString = ReplaceLineEndings (importedString, EndOfLine)

现在,您可以将EndOfLine与normalizedString一起使用,例如,将其拆分成单行:

代码语言:javascript
复制
dim lines() as String = normalizedString.Split (EndOfLine)

当您写回这个字符串时,您将自动将其转换为系统的格式。

但是,当您将文本导出到您知道需要某种格式的系统中时,请将其转换回如下格式:

代码语言:javascript
复制
// E.g, if you export them for a Mac:
outputString = ReplaceLineEndings (internalString, EndOfLine.Unix)
票数 1
EN

Stack Overflow用户

发布于 2019-05-22 21:32:46

EndOfLine总是依赖于平台,所以在Windows上,它的值是chr(13)+chr(10),而在macOS上,它的值是chr(10)。您可以使用EndOfLine.WindowsEndOfLine.OSX直接获取这些特定于平台的值。

要规范化字符串中的行尾,可以使用ReplaceLineEndings()函数。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56257648

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档