【发布时间】:2016-03-19 10:45:39
【问题描述】:
我正在尝试在 TextPad 中使用 Java 读取 .dat 文件。 .dat 文件有多行代码,但每一行都有单独的信息,我需要这些信息用于我的主要方法和对象类中的不同方法。如何分隔文件中提供的信息并将单独的部分输入到我的任何类中?
我知道如何从 .txt 文件读取基本输入,但它不适用于 .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 CourseName 学分 StudentName Major Grade
1001简介。致 CompSci 4ALBERT, PETER A. Comp 信息系统 A
【问题讨论】:
-
此外,我将在 Credits 部分以双精度阅读,其他所有内容都将作为字符串阅读。无论如何,这是计划,如果有人有更好的方法,我会这样做。
-
课程名称是否总是被截断/填充空格,长度为 20 个字符?
-
没有@kittycat3141。 4 个不同的课程名称中的每一个都需要按原样显示。
-
虽然没有明确的分隔符将字段彼此分开,但似乎每个字段都包含特定的长度(CourseID = 4,CourseName = 20,Creadits = 1,StudentName = 10,Major = 20,最后等级 = 1)。基于此,您可以在从文件中读取每个文件行时轻松地拆开并修剪它。
-
对不起....StudentName 是一个长度为 20 的字段。
标签: java file-io input io output