Windows 和 Linux 之间的行结束符有区别吗? [关闭]

2023-11-23

我正在尝试解析Linux/etc/passwdJava 中的文件。我目前正在阅读每一行java.util.Scanner类,然后使用java.lang.String.split(String)来界定每一行。

问题是该行:

list:x:38:38:Mailing List Manager:/var/list:/bin/sh" 

被扫描仪视为 3 条不同的线:

  1. list:x:38:38:Mailing
  2. List
  3. Manager...

当我将其输入到一个不是从 Linux 获得的新文件中时,Scanner正确解析它。

关于 Linux 中的新行,有什么我不明白的地方吗?

显然,解决方法是在不使用扫描仪的情况下解析它,但这并不优雅。有谁知道一种优雅的方法吗?

有没有一种方法可以将文件转换为可以使用的文件Scanner?


甚至不到两天前:不同线路在不同平台结束的历史原因

EDIT

原作者注:

“我发现我有一个不同的错误导致了这个问题。忽略问题”


From 维基百科:

  • LF:Multics、Unix 和类 Unix 系统(GNU/Linux、AIX、Xenix、苹果系统 X、FreeBSD 等)、BeOS、Amiga、RISC 操作系统及其他
  • CR+LF:DEC RT-11 和大多数其他早期非 Unix、非 IBM 操作系统、CP/M、 MP/M,DOS、OS/2、微软Windows, 塞班操作系统
  • CR:Commodore 机器,Apple II 系列,Mac 操作系统最高版本 9和 操作系统-9

我将其翻译成这些行结尾一般来说:

  • 视窗:'\r\n'
  • Mac(操作系统 9-):'\r'
  • Mac(操作系统 10+):'\n'
  • Unix/Linux:'\n'

您还需要让您的扫描器/解析器处理 unix 版本。

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

Windows 和 Linux 之间的行结束符有区别吗? [关闭] 的相关文章

  • 如何使用户输入与变量相关?

    我不知道如何准确地表达这个问题 但这就是我想要实现的目标 我正在使用堆栈实现河内塔插图 这是里面的main 功能 System out println Type the source pole number and the destinat
  • 在 Linux 2.6.21 (glibc 2.3.5) 上进行 ARP 和反向 ARP

    我需要在任意 IP 网络上存储对第三方设备的持久引用 其中设备的 IP 地址可能是静态的或由 DHCP 随机分配 我不控制网络上的设备 也不能依赖 DNS 和其他现有的或与设备一起使用的临时网络协议 所以我被指示使用硬件地址和 ARP 进行
  • 如何滚动到 div 元素底部 Selenium Webdriver

    我有一个用例 其中网页上有一个 div 元素 只要您单击链接 它就会出现一个弹出对话框 它不是实际的弹出窗口 它类似于当您单击链接进行检查时在 Facebook 中打开的对话框 对您的帖子的反应等 我使用 Selenium WebDrive
  • 使用 Google Guava 进行不区分大小写的排序

    目前 我在两个不同的地方使用以下两段代码来创建一个排序的 不可变的列表 return Ordering natural immutableSortedCopy iterable and return Ordering usingToStri
  • 关键词是真还是假?

    Are true and falseJava 中的关键字 这是完整的列表Java 语言关键字 http java sun com docs books tutorial java nutsandbolts keywords html 特别要
  • 使用 setcap 功能运行时 JLI_InitArgProcessing 的 Java“符号查找错误”

    我们在服务器上安装了 Java 11 旨在监视网络接口的流量 初始安装后 yum install java 11 openjdk devel x86 64 the java命令对两者都适用root and a 普通用户 但是 我们的 Jav
  • 创建另一个进程的 HWND 的子窗口? (例如屏幕保护程序预览)

    我正在用 Java 编写一个屏幕保护程序 它主要适用于 Windows 但我更希望它尽可能便携且实用 根据http support microsoft com kb 182383 http support microsoft com kb
  • 如何修改s_client的代码?

    我正在玩apps s client c in the openssl源代码 我想进行一些更改并运行它 但是在保存文件并执行操作后 我的更改没有得到反映make all or a make 例如 我改变了sc usage函数为此 BIO pr
  • 访问 Linux 线程(pthreads)的本地堆栈

    我目前正在实现一个使用多线程但对总内存消耗有要求的应用程序 我希望有一个主线程执行 I O 并有几个工作线程执行计算 目前 我在主堆栈上有几个可供工作人员访问的数据结构 我使用 OpenMP 进行工作分配 由于主 工作者模式不能很好地与 O
  • 将 xml 传递给 jquery 脚本时出现问题

    我正在尝试使用 jsp 中的 bufferedReader 从本地路径读取 xml 并尝试将 xml 传递给 jquery 脚本 如下所示
  • 在 C 中使用 sqrtf():“未定义对‘sqrtf’的引用”

    我正在使用Linux Ubuntu 12 04 https en wikipedia org wiki Ubuntu version history Ubuntu 12 04 LTS 28Precise Pangolin 29 Precis
  • Linux shell 命令逐块读取/打印文件

    是否有一个标准的 Linux 命令可以用来逐块读取文件 例如 我有一个大小为 6kB 的文件 我想读取 打印第一个 1kB 然后是第二个 1kB 看来猫 头 尾在这种情况下不起作用 非常感谢 你可以这样做read n在循环中 while r
  • 使用 Spring Security 滑动过期

    我正在使用 Spring Security 我注意到 当用户登录时 身份验证 cookie 的有效期约为一天 它似乎并没有 刷新 这个过期日期 cookie 在一天后过期 即使在当天结束前 5 分钟我已经通过安全 URL 向服务器发出了请求
  • DateTimeFormatter 中的通配符

    我需要将一个字符串解析为LocalDate 该字符串看起来像31 03 2016用正则表达式术语 即 表示日期数字后可能有 0 个或多个未知字符 输入 输出示例 31xy 03 2016 gt 2016 03 31 我希望在 DateTim
  • Java 中的冒号是什么意思?

    Java 中的冒号是什么意思 我有这个 public static List
  • java中如何查找两个时间戳的差异?

    我有一个ArrayList包括多个时间戳 目的是找到第一个和最后一个元素的差异ArrayList String a ArrayList get 0 String b ArrayList get ArrayList size 1 long d
  • 如何将 try-with-resources 与 if 语句一起使用?

    我有简单的代码 try FileReader file new FileReader messageFilePath BufferedReader reader new BufferedReader file String line whi
  • -XX:MinHeapFreeRatio 和 -XX:MaxHeapFreeRatio 的目的是什么

    请告诉我这些选项的目的 谷歌搜索后我想 MinHeapFreeRatio 表示 GC 后将确保堆内存中指定的最小空间百分比是可用的 和 MaxHeapFreeRatio告诉 GC后堆内存中的空闲空间不会超过指定的百分比 如果空闲内存超过指定
  • 在 Transport.send(message) 上获取 ParseException

    由于某种原因 当我在 MimeMessage 上调用 Transport send 时 出现 javax mail internet ParseException 以前 当它只是一封纯文本电子邮件时 这是有效的 但是当我将其更改为同时包含文
  • Spring Boot logback.xml 创建 .tmp 文件

    我正在尝试保留 Spring Boot 应用程序的日志 但是 由于生成的日志很大 我正在尝试使用 logback xml 将大于 350MB 的文件滚动到压缩文件中 我每天可以滚动几 MB 但中途服务开始写入临时文件 我已经尝试了 Time

随机推荐