如何从 Java 中的 .dat 文件中读取一行,然后需要将其分隔开?

2024-01-25

我正在尝试在 TextPad 中使用 Java 读取 .dat 文件。 .dat 文件有多行代码,但每一行都有单独的信息,我的主方法和对象类中的不同方法需要这些信息。如何分离文件中提供的信息并将单独的部分输入到我的任何类中?

我知道如何从 .t​​xt 文件读取基本输入,但它不适用于 .dat 文件。我不知道如何分隔没有逗号的数据,并且不允许我更改 .dat 文件中的数据。

在 TextPad 中查看 .dat 文件时,它显示为标准字符,而不是二进制字符。我试图阅读的代码如下:

1001Intro. to CompSci 4ALBERT, PETER A. Comp Info System A 1001Intro. to CompSci 4ALLENSON, SHEILA M. Comp Info System B 1001Intro. to CompSci 4ANDERSON, ALENE T. Comp Info System A 1001Intro. to CompSci 4HENDRIX, JAMES D. Lib Arts - MIS C 1001Intro. to CompSci 4CANNON, FREDDY B.B. Comp Info System B 1002Visual Basic 3ALBERT, PETER A. Comp Info System C 1002Visual Basic 3ALLENSON, SHEILA M. Comp Info System D 1002Visual Basic 3ANDERSON, ALENE T. Comp Info System A 1002Visual Basic 3HENDRIX, JAMES D. Lib Arts - MIS B 1002Visual Basic 3CANNON, FREDDY B.B. Comp Info System B 1003Cisco Networking I 4ALBERT, PETER A. Comp Info System C 1003Cisco Networking I 4ALLENSON, SHEILA M. Comp Info System A 1003Cisco Networking I 4ANDERSON, ALENE T. Comp Info System A 1003Cisco Networking I 4HENDRIX, JAMES D. Lib Arts - MIS D 1004Cisco Networking III3ALBERT, PETER A. Comp Info System B 1004Cisco Networking III3ALLENSON, SHEILA M. Comp Info System C 1004Cisco Networking III3ANDERSON, ALENE T. Comp Info System A 1004Cisco Networking III3CANNON, FREDDY B.B. Comp Info System B 1004Cisco Networking III3HELLER, HELEN H. Lib Arts - MIS A 1004Cisco Networking III3HENDRIX, JAMES D. Lib Arts - MIS F

下面以上面的第 1 行为例对各个信息进行了标记:

CourseID课程名Credits学生姓名Major年级

1001介绍。计算机科学4阿尔伯特·彼得·A.比较信息系统 A


Note:这个答案假设每列都有一定的长度(4位课程ID,20个字符的课程名称,1位学分,20个字符的学生姓名,20个字符的专业,1位的成绩)

首先,您需要获取文件中每一行的列表。

String[] lines = Files.readAllLines(new File("myfile.dat").toPath()).toArray(new String[0]);

接下来,使用以下方法处理每一行substring() method:

for(String line: lines) {
    int courseId = Integer.parseInt(line.substring(0, 4));
    String studentName = line.substring(4, 24).trim();
    // etc...
}

The trim()函数删除尾随空格。

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

如何从 Java 中的 .dat 文件中读取一行,然后需要将其分隔开? 的相关文章

  • 使用 proguard 混淆文件名

    我正在使用 proguard 和 Android Studio 混淆我的 apk 当我反编译我的apk时 我可以看到很多文件 例如aaa java aab java ETC 但我项目中的所有文件都有原始名称 有没有办法混淆我的项目的文件名
  • 如何以编程方式使用包含多列的 where-in 子句执行 PostgreSQL 查询?

    我的查询是这样的 select from plat customs complex where code t code s in 01013090 10 01029010 90 它在 psql 控制台中运行良好 我的问题是如何在客户端代码中
  • 如何在 Android 应用程序中隐藏 Flutterwave API 密钥

    我正在构建一个 Android 应用程序 目前正在将 Flutterwave 集成到我的应用程序中以进行支付 建议我永远不要将 Flutterwave API 密钥放在我的应用程序上 那么我该如何隐藏这些键呢 我正在使用 Retrofit
  • 为什么在 10 个 Java 线程中递增一个数字不会得到 10 的值?

    我不明白 a 的值为0 为什么 a 不是10 那段代码的运行过程是怎样的 是否需要从Java内存模型来分析 这是我的测试代码 package com study concurrent demo import lombok extern sl
  • 什么是内部类的合成反向引用

    我正在寻找应用程序中的内存泄漏 我正在使用的探查器告诉我寻找这些类型的引用 但我不知道我在寻找什么 有人可以解释一下吗 Thanks Elliott 您可以对 OUTER 类进行合成反向引用 但不能对内部类实例进行合成 e g class
  • 无法使用 datastax java 驱动程序通过 UDT 密钥从 cassandra 检索

    我正在尝试使用用户定义的类型作为分区键将对象存储在 cassandra 中 我正在使用 datastax java 驱动程序进行对象映射 虽然我能够插入到数据库中 但无法检索该对象 如果我更改分区键以使用非 udt 例如文本 我就能够保存和
  • 为什么用scala写的代码比用java写的慢6倍?

    我不确定我在编写 scala 代码时是否犯了一些错误 问题是 The four adjacent digits in the 1000 digit number that have the greatest product are 9 9
  • 未装饰窗户的 Windows Snap 功能?

    有谁知道如何允许未装饰的窗户使用此功能 唯一的选择就是重新实施它 有任何想法吗 谢谢 可停靠可能是唯一的JToolBar http docs oracle com javase tutorial uiswing components too
  • Java中Gson、JsonElement、String比较

    好吧 我想知道这可能非常简单和愚蠢 但在与这种情况作斗争一段时间后 我不知道发生了什么 我正在使用 Gson 来处理一些 JSON 元素 在我的代码中的某个位置 我将 JsonObject 的 JsonElements 之一作为字符串获取
  • JOOQ 忽略具有默认值的数据库列

    看来JOOQ完全忽略了数据库列的默认值 既不会更新 ActiveRecord 对象 也不会在 INSERT 时跳过此列 相反 它尝试将其设置为 NULL 这在 NOT NULL 列上失败 Example CREATE TABLE bug f
  • 如何使用 Java 引用释放 Java Unsafe 内存?

    Java Unsafe 类允许您按如下方式为对象分配内存 但是使用此方法在完成后如何释放分配的内存 因为它不提供内存地址 Field f Unsafe class getDeclaredField theUnsafe Internal re
  • getCurrentSession 在网络中休眠

    我正在使用 hibernate 和 jsp servlet 编写一个基于 Web 的应用程序 我读过有关sessionFactory getCurrentSession and sessionFactory openSession方法 我知
  • 2^31 次方的 Java 指数错误 [重复]

    这个问题在这里已经有答案了 我正在编写一个java程序来输出2的指数幂 顺便说一句 我不能使用Math pow 但是在 2 31 和 2 32 处我得到了其他东西 另外 我不打算接受负整数 My code class PrintPowers
  • 如何更改 Swagger-ui URL 前缀?

    我正在使用 Springfox Swagger2 和 Spring boot 1 5 9 我可以通过此链接访问 swagger UI http localhost 8090 swagger ui html http localhost 80
  • Android 认为我没有关闭数据库!为什么?

    我有一个 SQLiteDatabase 数据成员 我在 onCreate 中初始化它 并在 onPause onStop 和 onDestroy 中调用 close 它在 onResume 中重新初始化 它似乎运行得很好 但当我查看调试器时
  • UseCompressedOops JVM 标志有什么作用以及何时应该使用它?

    HotSpot JVM 标志是什么 XX UseCompressedOops我应该做什么以及什么时候使用它 在 64 位 Java 实例上使用它 与不使用它 时 我会看到什么样的性能和内存使用差异 去年大多数 HotSpot JVM 都默认
  • 数据库中的持久日期不等于检索日期

    我有一个具有 Date 属性的简单实体类 此属性对应于 MySQL 日期时间列 Entity public class Entity Column name start date Temporal TemporalType TIMESTAM
  • 我所有的 java 应用程序现在都会抛出 java.awt.headlessException

    所以几天前我有几个工作Java应用程序使用Swing图书馆 JFrame尤其 他们都工作得很好 现在他们都抛出了这个异常 java awt headlessexception 我不知道是什么改变了也许我的Java版本不小心更新了 谢谢你尽你
  • 确定 JavaFX 中是否消耗了事件

    我正在尝试使用 JavaFX 中的事件处理来做一些非滑雪道的事情 我需要能够确定手动触发事件后是否已消耗该事件 在以下示例中 正确接收了合成鼠标事件 但调用 Consumer 不会更新该事件 我对此进行了调试 发现 JavaFX 实际上创建
  • 如何在 Firefox 插件中追加到文件?

    var tabs require sdk tabs var iofile require sdk io file var widgets require sdk widget var selection require sdk select

随机推荐

  • 如何衡量用户桌面应用程序的使用情况? [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我用 c NET 3 5 编写了一个
  • 新的核心数据实体与现有核心数据实体相同:单独的实体还是其他解决方案?

    概述 我正在设计一个餐厅管理应用程序 并且有一个名为 Order 的实体 其中包含 Items 由于一家餐厅可以运营多年 拥有数千个已完成的 订单 并且为了使我的应用程序的网络方面更容易并保持数据库快速运行 我想引入 ClosedOrder
  • 将 pcm 加载到 AVAudioPCMBuffer 中

    我有这个代码 func loadSoundfont pitch String let path String Bundle main path forResource self id pitch ofType f32 let url URL
  • MUI TextField sx props 不应用样式

    我正在尝试使用一次性方式设置 TextField 组件的样式sx prop
  • 启动时结构崩溃

    我的应用程序在 onCreate 函数内的这一行崩溃了 Fabric with this new Crashlytics 该设备是 SAMSUNG SM G313 HZ 运行 4 4 2 我已向他们的 Twitter 开发论坛举报 但我的帖
  • 为什么 Microsoft Word 2007 中的 VBA IDE 智能感知不断更改特定变量类型名称的大小写?

    这是我问过的最奇怪的问题 我什至不知道如何表达它 我记得类似的事情早在 VB6 IDE 中就发生过 但我忘记了修复方法 如果是这种情况 那么这就是 VB IDE 中的一个非常古老的错误 问题是这样的 当我不小心输入时 我正在编写一个简单的
  • 用于时间跟踪的 MongoDB 架构设计

    我创建了一个简单的时间跟踪应用程序 人们可以在其中计时 超时并标记休息时间 此跟踪的中心对象是Event产生于User 这与用户状态确保状态管理正确 这是减去的架构更新时间 创建于 fields userId type mongoose S
  • 实体框架在更新实体时表示属性为空

    我正在尝试将新实体添加到现有集合中 但是 当这样做时 父 实体抱怨其他导航属性为空 尽管它们不是 Error 类型异常 发生 System Data Entity Validation DbEntityValidationException
  • 使用自组织映射进行降维

    过去几个月我一直在研究自组织映射 SOM 但是我在理解降维部分仍然有些困惑 你能建议任何简单的方法来理解 SOM 在任何现实世界数据集上的实际工作吗 就像来自 UCI 存储库的数据集 好的 首先参考一些之前的相关问题 这将使您更好地理解 S
  • 如何将 AnyEvent::Handler 与具有端口重用的套接字一起使用

    最近我遇到了一个很棒的 Perl 模块 AnyEvent 它允许用户进行异步 事件驱动的编程 创建了以下代码片段 效果很好 我遇到的问题是 在打开和关闭大量套接字后 它很快耗尽了所有客户端端口 netstat ant 显示 20 000 多
  • 如何从 Firebase 中删除数据库?

    这一定是在盯着我的脸 但没有看到命令 如何从新 Firebase 的控制台中删除未使用的 Firebase 数据库 谷歌没有提供答案 这还是第一次 如果您不想删除项目而只想删除数据库 另一种方法是在计算机上创建一个文件empty json像
  • 从 InnerHTML 内的代码隐藏向页面添加 ASP 控件

    我正在尝试从后面的代码向网页添加一个按钮 我的主页上有一个空的 div 在需要时可以打开和关闭 然而 我希望动态创建的内容 因为 div 内容可以根据条件而改变 我意识到在我的 ASP 控件中我使用了 反斜杠 来取消我的 HTML 我现在遇
  • 两对多的数据关系是否应该被视为多对多?

    我有 2 个数据库表 Teams 和 Games 出于此问题的目的 我们正在处理足球队和比赛 每场比赛只有两支球队 通常是主队和客队 但有时两支球队都可以保持中立 我的问题是我是否应该使用 Games 表中的 2 个外键 home team
  • 两个内容提供商访问同一个数据库

    Hi all 我想知道如果希望两个完全不同的 Android 应用程序访问和操作同一个数据库 是否存在一种普遍首选的实现范例值得尊重 是否建议甚至技术上可以这样做 这样的架构会是什么样子 截至目前 我正在考虑让这两个应用程序实现自己的Con
  • WPF 无法从 url 检索 WebP 图像?

    我无法从网址检索图像 以前 在设置 HttpClient 标头之前 我根本无法连接到该站点 我可以从其他来源检索图像 但不能从这个特定来源检索图像 检索图像的代码 var img new BitmapImage img BeginInit
  • C# 中的“this[0]”是什么意思?

    我正在浏览一些库代码并看到如下方法 public CollapsingRecordNodeItemList List get return this 0 as CollapsingRecordNodeItemList 包含此方法的类不是列表
  • 调试时在 Visual Studio 2019 中将代码设置为只读

    当我使用 Visual Studio 2017 时 我的代码是只读的 直到我点击 全部中断 或断点 我很确定这是开箱即用的 无需我更改任何选项 我正在讨论使用 C 和编辑并继续进行 Windows 桌面开发 在 2019 年 我总是能够更改
  • 在具有完整日历功能的事件框中设置每种不同的颜色

    我在完整日历功能中设置每个事件框中的颜色时遇到问题 目前 我只能在 fc daygrid event dot 中设置 我可以知道如何设置每个事件框中的背景颜色吗 下面是我的编码 document addEventListener DOMCo
  • PyGame-角色离开屏幕

    我正在尝试用 pygame 制作游戏 但我不知道如何防止我的角色离开屏幕 设置限制 我有一个由用户输入控制的 png 图像 但角色可能会正常离开可见屏幕区域 我不知道该怎么做 我在窗户周围画了一个矩形 pygame draw rect 但我
  • 如何从 Java 中的 .dat 文件中读取一行,然后需要将其分隔开?

    我正在尝试在 TextPad 中使用 Java 读取 dat 文件 dat 文件有多行代码 但每一行都有单独的信息 我的主方法和对象类中的不同方法需要这些信息 如何分离文件中提供的信息并将单独的部分输入到我的任何类中 我知道如何从 t xt