gpt4 book ai didi

C++读取二维数组中的文件

转载 作者:行者123 更新时间:2023-11-27 23:15:40 27 4
gpt4 key购买 nike

我几乎对这个程序感到沮丧。我有一个包含 100 条记录的文件,但我的输出不会超过 17 条,包括标题。谁能告诉我我做错了什么?

#include "stdafx.h"
#include <iostream>
#include <fstream>

using namespace std;

char medRecord[100][8];
int header, person;

int main()
{

ifstream in("fakedata.txt");
if(!in){
cout << "Cannot open file. \n";
return 1;
}

in.read((char *) &medRecord, sizeof medRecord);

for(person = 0; person < 100; person++)
for(header = 0; header < 8; header++)
cout << medRecord[person][header] << "";

return 0;

}

输出:

Number,Gender,GivenName,Surname,Birthday,BloodType,Pounds,FeetInches
1,male,Joseph,Doody,1/10/1968,A-,179.5,5' 7"
2,male,Robert,King,8/17/1985,A+,203.1,5' 10"
3,male,Richard,Murphy,3/18/1944,O+,235.6,6' 1"
4,female,Caroline,Acosta,5/27/1959,B+,145.4,5' 8"
5,male,John,Capps,12/18/1967,O+,186.6,5' 9"
6,female,Stephanie,Guidry,3/25/1981,O+,177.8,5' 6"
7,female,Janet,Kimmel,2/23/1977,A+,161.3,5' 7"
8,male,Jerrell,Wright,8/4/1929,B+,140.6,5' 9"
9,female,Cheryl,Johnson,12/8/1972,A+,128.7,5' 1"
10,female,Sandra,Gonzalez,6/1/1974,A+,171.4,5' 9"
11,male,Kevin,Noel,9/30/1939,O+,212.1,5' 6"
12,female,Krysta,Booth,7/9/1940,O+,173.1,5' 3"
13,male,Sam,Clark,7/5/1979,A+,162.4,5' 9"
14,male,James,Graves,8/15/1959,A+,235.0,5' 8"
15,male,Elton,Fink,6/30/1937,A+,198.4,5' 5"
16,male,Robert,Daniels,10/14/1969,Press any key to continue . . .

最佳答案

您的 medRecord 数组包含 800 个字符。输出的文本包含 783 个字符,一行短(或更少)800。所以,看不见的,你可能正在尝试将整个文件读入 medRecord,然后读取或输出当它被填满时停止。

我通过在 Open Office 中剪切/粘贴来计算——如果换行符计算不正确,那么 783 + 17 = 800 就这样了。

关于C++读取二维数组中的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16555290/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com