COBOL如何读取和写入CSV文件
作者:佚名
上传时间:2023-03-25
运行软件:Micro Focus COBOL
软件版本:COBOL 85
版权申诉
这个示例代码展示了使用COBOL读取和写入CSV文件的方法。它使用了COBOL内置的SEQUENTIAL ACCESS和DELIMITED BY文本文件处理功能,可以方便地处理常见的CSV文件。该示例代码有一个包含学生信息的CSV文件,读取该文件并根据学生成绩算出各科平均分并将结果写入一个新的CSV文件。
IDENTIFICATION DIVISION.
PROGRAM-ID. CSV-FILE-PROCESSING.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT IN-FILE ASSIGN "students.csv"
ORGANIZATION LINE SEQUENTIAL
ACCESS MODE SEQUENTIAL
FILE STATUS MSD-STATUS.
SELECT OUT-FILE ASSIGN "output.csv"
ORGANIZATION LINE SEQUENTIAL
ACCESS MODE SEQUENTIAL
FILE STATUS MSD-STATUS.
DATA DIVISION.
FILE SECTION.
FD IN-FILE.
01 STUDENT-REC.
05 S-NAME PIC X(10).
05 S-MATH-SCORE PIC 9(3).
05 S-ENG-SCORE PIC 9(3).
05 S-SCI-SCORE PIC 9(3).
FD OUT-FILE.
01 OUT-REC.
05 O-NAME PIC X(10).
05 O-MATH-SCORE PIC 9(3).
05 O-ENG-SCORE PIC 9(3).
05 O-SCI-SCORE PIC 9(3).
05 O-AVG-SCORE PIC 9(3).
WORKING-STORAGE SECTION.
01 WS-COUNTER PIC 9(3) VALUE 0.
01 WS-MATH-TOTAL PIC 9(5) VALUE 0.
01 WS-ENG-TOTAL PIC 9(5) VALUE 0.
01 WS-SCI-TOTAL PIC 9(5) VALUE 0.
01 WS-MATH-AVG PIC 9(3)V9 VALUE 0.0.
01 WS-ENG-AVG PIC 9(3)V9 VALUE 0.0.
01 WS-SCI-AVG PIC 9(3)V9 VALUE 0.0.
01 WS-OUT-NAME PIC X(10).
01 WS-OUT-MATH-SCORE PIC 9(3).
01 WS-OUT-ENG-SCORE PIC 9(3).
01 WS-OUT-SCI-SCORE PIC 9(3).
01 WS-OUT-AVG-SCORE PIC 9(3).
PROCEDURE DIVISION.
Main.
OPEN INPUT IN-FILE
OUTPUT OUT-FILE.
READ IN-FILE
AT END
GO TO Finish.
PERFORM ReadStudentInfo
PERFORM CalculateAndWriteStudentInfo
ADD 1 TO WS-COUNTER
GO TO Main.
Finish.
CLOSE IN-FILE
OUT-FILE.
STOP RUN.
ReadStudentInfo.
MOVE S-NAME TO WS-OUT-NAME
MOVE S-MATH-SCORE TO WS-OUT-MATH-SCORE
MOVE S-ENG-SCORE TO WS-OUT-ENG-SCORE
MOVE S-SCI-SCORE TO WS-OUT-SCI-SCORE.
CalculateAndWriteStudentInfo.
COMPUTE WS-MATH-TOTAL = WS-MATH-TOTAL + WS-OUT-MATH-SCORE
COMPUTE WS-ENG-TOTAL = WS-ENG-TOTAL + WS-OUT-ENG-SCORE
COMPUTE WS-SCI-TOTAL = WS-SCI-TOTAL + WS-OUT-SCI-SCORE
DIVIDE WS-MATH-TOTAL BY WS-COUNTER GIVING WS-MATH-AVG
DIVIDE WS-ENG-TOTAL BY WS-COUNTER GIVING WS-ENG-AVG
DIVIDE WS-SCI-TOTAL BY WS-COUNTER GIVING WS-SCI-AVG
MOVE WS-MATH-AVG TO WS-OUT-MATH-SCORE
MOVE WS-ENG-AVG TO WS-OUT-ENG-SCORE
MOVE WS-SCI-AVG TO WS-OUT-SCI-SCORE
MOVE WS-OUT-NAME TO O-NAME
MOVE WS-OUT-MATH-SCORE TO O-MATH-SCORE
MOVE WS-OUT-ENG-SCORE TO O-ENG-SCORE
MOVE WS-OUT-SCI-SCORE TO O-SCI-SCORE
COMPUTE WS-OUT-AVG-SCORE = (WS-OUT-MATH-SCORE + WS-OUT-ENG-SCORE + WS-OUT-SCI-SCORE) / 3
MOVE WS-OUT-AVG-SCORE TO O-AVG-SCORE
WRITE OUT-REC.
免责申明:文章和图片全部来源于公开网络,如有侵权,请通知删除 server@dude6.com
用户评论
相关推荐
COBOL如何读取和写入CSV文件
这个示例代码展示了使用COBOL读取和写入CSV文件的方法。它使用了COBOL内置的SEQUENTIAL ACCESS和DELIMITED BY文本文件处理功能,可以方便地处理常见的CSV文件。该示例
COBOL 85
Micro Focus COBOL
2023-03-25 12:43
COBOL中如何读取和写入CSV文件?
本示例展示了如何使用COBOL编程语言读取和写入CSV文件。CSV文件是一种常见的文本文件格式,其中数据以逗号分隔。通过本示例,您将学习如何在COBOL程序中打开和读取CSV文件,以及如何将数据写入C
COBOL85
COBOL编译器
2023-04-12 07:59
如何在COBOL中读取和写入CSV文件
COBOL是一种古老但仍然广泛使用的编程语言,它可以用于处理各种文件格式,包括CSV(逗号分隔值)文件。CSV文件是一种常见的数据交换格式,它使用逗号作为字段分隔符。COBOL如何读取CSV文件C
COBOL 11+
COBOL
2023-03-22 10:16
使用COBOL读取和写入CSV文件
本示例展示了如何使用COBOL读取和写入CSV文件,CSV文件是以逗号分隔的文本文件,常用于数据交换和存储。本示例使用了内置的INPUT-OUTPUT SECTION和FILE SECTION语句,读
OpenCOBOL 1.1
COBOL编译器
2023-03-30 00:07
Erlang如何读取和写入CSV文件
本示例代码将介绍如何使用Erlang从CSV文件中读取和写入数据。Erlang是一种函数式编程语言,它可以很好地处理并发和分布式系统。-module(csv_parser).-export([re
Erlang OTP 22.0
Erlang/OTP
2023-04-12 02:39
C++如何读取和写入csv文件
本示例代码演示了C++如何使用fstream库读取和写入csv文件(逗号分隔值文件),以及如何解析csv文件中的每一行数据。#include <iostream>#include &l
C++11及以上
Visual Studio 2019
2023-04-07 09:20
Pascal如何读取和写入CSV文件
展示如何使用Pascal读取和写入CSV文件。CSV文件是一种包含逗号分隔值的纯文本文件,在许多业务和科学领域中都是很常见的数据格式。见下面
Free Pascal 3.2.2
Free Pascal Compiler
2023-03-22 06:08
Python如何读取和写入CSV文件?
本示例展示了如何使用Python语言读取和写入CSV文件。CSV文件指的是逗号分隔值文件,包含一系列用逗号分隔的数据行。通过该示例,可以实现快速而简单的CSV文件读写操作。import csv#
Python 3.9.0
Python
2023-05-30 09:14
Java如何读取和写入CSV文件
本示例代码展示了如何使用Java读取和写入CSV文件。我们使用CSVReader和CSVWriter两个类分别读取和写入CSV文件,这两个类均来自于OpenCSV库。// 导入库import co
OpenCSV 4.2
Java
2023-04-29 09:06
COBOL如何读取CSV文件
CSV(逗号分隔值)文件是一种常见的文件格式,通常用于数据交换和数据存储。在COBOL中,可以使用以下步骤来读取CSV文件:打开CSV文件,使用INPUT或I-O模式打开文件。读取CSV文件中的
COBOL85
Visual Studio Code
2023-03-15 09:24