\n 和 \r 似乎到处都可以工作。为什么 line.separator 更便携?

2024-05-28

我只是仔细阅读问题,发现System.getProperty(line.separator)用于代替\n作者评论说该代码是“可移植的”。通过阅读各种论坛,我看到了两个群体:

  1. 有人说 Linux 和 Windows 对换行符的解释存在差异,这弥补了这一点(没有明确的证据)。
  2. 有人说通过显示代码和输出示例没有区别,这显然只适用于该代码示例而不是普遍适用。

我的感觉是:它可能是非标准操作系统,例如您公司的工业扫描仪操作系统,您会注意到其中的差异。我什么时候才能看到两者之间的区别\n and line.separator?你能举个例子吗?您是如何发现变异发生的地方的?


这是操作系统的标准行分隔符:

Windows: '\r\n'
Mac (OS 9-): '\r'
Mac (OS 10+): '\n'
Unix/Linux: '\n'

这意味着如果您将行分隔符硬编码为\n,您将在 Linux 和 OS X 中获得预期结果,但 Windows 无法正确识别行结尾。然而,通过使用更通用的line.separator为了表示您的行结尾,它们将解析为执行操作系统预期的行结尾实现可能是什么。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

\n 和 \r 似乎到处都可以工作。为什么 line.separator 更便携? 的相关文章

随机推荐

  • 查找字符串变量中的位数

    我有一个字符串 有时给出字符值 有时给出整数值 我想获取该字符串中的位数 例如 如果字符串包含 2485083572085748 则总位数为 16 请在这件事上给予我帮助 使用正则表达式的更干净的解决方案 matches all non d
  • 如何避免阻塞node.js中的主线程?

    当使用 Node js 编写 Web 服务器应用程序时 永远不要阻塞主线程当然非常重要 但是 如果服务器请求需要进行需要一些时间才能完成的计算怎么办 会做一个 setTimeout myCalculationFunc 0 是保持服务器响应其
  • Javascript 中的深平面多维数组[重复]

    这个问题在这里已经有答案了 我想编写一个可以深度展平给定数组的函数 例如 deepFlatten deepFlatten 1 2 3 1 2 3 deepFlatten 1 2 3 a b c 1 2 3 1 2 3 a b c 1 2 3
  • Google AJAX API - 如何获得 4 个以上结果?

    我使用下面的 google API ajax 来获取特定搜索词的图像 这是在一个WinForms app 下面的链接似乎有效 但它只返回 4 个结果 通过 JSON 有谁知道如何哄得更多吗 显然必须有另一个参数来请求更多或分页结果 但我似乎
  • 如何在2.0构建的应用程序中使用WCF wsHttpBinding服务?

    WCF 服务正在使用 wsHttpBinding 绑定运行 将使用 WCF 服务的应用程序不符合 WCF 或者换句话说 它位于 Framework 2 0 之上 我无法在此应用程序中使用 ServiceModel 因为只有 3 5 支持 S
  • 我可以在 Emacs 的 shell 模式下使用 PowerShell 吗?

    我可以在 emacs 的 shell 模式下使用 powershell 作为 shell 吗 How 请参阅 Jeffrey Snover 的博客文章在 Emacs 内运行的 PowerShell http blogs msdn com p
  • 如何区分两个同名的多选列表

    对于我正在构建的系统 我需要查看第一个列表中出现了哪些选项 通过 POST 请求 以及第二个列表中出现了哪些选项
  • 将 android ndk 构建文件转换为 gradle

    是否有任何有关将 application mk android mk 文件转换为基于 gradle 的 build gradle 文件的文档 良好的链接 QArea 多谢 目前 Gradle 中的 NDK 支持非常有限 如果你需要组装一些
  • 多彩文本框的想法?

    在我的网站中 我想实现一个文本框 人们可以在其中输入一组由分隔符分隔的字符串 例如本页底部的标签文本框 由空格 分隔符 分隔的标签 字符串 为了让用户更清楚 为每个字符串提供不同的背景颜色或其他视觉提示是很有意义的 我认为使用常规输入 文本
  • Python(和 Java)中最快的数据打包

    Sometimes http www codinghorror com blog 2009 01 the sad tragedy of micro optimization theater html our host is wrong na
  • Html.Display对于十进制格式?

    例如 我有一个十进制值 59625879 00 我想这样显示这个值 59 625 879 or 59625 879 我怎样才能做到这一点 Html DisplayFor x gt x TAll String Format Thanks 装饰
  • 完成任务时手动捕获并应用 SynchronizationContext

    我遇到了挂起等待的问题 已描述here https stackoverflow com questions 40992035 awaiting a task that is being completed on a background t
  • 比较 Kotlin 中没有 ID 的数据类

    我在 Kotlin 中有一个数据类 它有很多属性 其中之一是ID 但当我实际使用时compare代码中的函数 我想排除这个ID比较时的属性 除了手动样板之外 还有什么方法可以做到这一点compare功能 数据类生成equals功能 comp
  • 如何让 esqueleto 为我生成 SQL 字符串?

    我怎样才能让esqueleto从a生成一个SQL字符串from陈述 的文档toRawSql说 你可以打开持久的查询日志记录 我尝试了所有可能的形式MonadLogger我可以理解 但它从未打印任何 SQL 同一文档还说 手动使用此功能 是可
  • Bash 字符串之间的比较 - 相等但不相等

    我只想在 Bash 中的两个字符串之间进行非常简单的比较 stat curl Is url head n 1 echo stat if stat HTTP 1 1 200 OK then echo symbol is OK echo sta
  • 在 AppEngine 项目之外使用 Google AppEngine 数据存储区

    对于我的小框架Pyxer http code google com p pyxer 我希望能够在 AppEngine 项目之外使用 Google AppEngine 数据存储 因为我现在已经习惯了这种 ORM 模式 对于一些快速的黑客来说
  • 辅助功能:ScrollView 自动滚动到点击“TAB”时不可见的视图

    有人可以让我知道当仅使用键盘的用户尝试使用 Tab 键在 ScrollView 中的不同 UI 元素之间导航时如何自动滚动滚动视图吗 当我按 TAB 键时 焦点会转移到滚动视图中存在的不同 UI 元素 但如果可见内容视图中不存在 UI 元素
  • 在 vulkan 中同步顶点缓冲区?

    我有一个顶点缓冲区 存储在设备内存和缓冲区中 并且主机可见且主机一致 为了写入主机端的顶点缓冲区 我将其映射 memcpy 到它并取消映射设备内存 为了从中读取数据 我在记录渲染过程期间将顶点缓冲区绑定在命令缓冲区中 这些命令缓冲区在获取
  • XML中的根节点、根元素和文档元素有什么区别?

    我在读W3C XML 路径语言 XPath 版本 1 0 第 5 1 节 根节点 https www w3 org TR 1999 REC xpath 19991116 root node 根节点是树的根 除非作为树的根 否则不会出现根节点
  • \n 和 \r 似乎到处都可以工作。为什么 line.separator 更便携?

    我只是仔细阅读问题 发现System getProperty line separator 用于代替 n作者评论说该代码是 可移植的 通过阅读各种论坛 我看到了两个群体 有人说 Linux 和 Windows 对换行符的解释存在差异 这弥补