在C中读写.txt文件
我试图让这段代码从计算机中读取一个.txt文件,将其信息复制到一个可用的声明矩阵,然后打印,不是文件,而是读取文件时生成的矩阵。不知什么原因,我似乎不能使它工作。它进入读取阶段,但无法存储数据在C中读写.txt文件,c,C,我试图让这段代码从计算机中读取一个.txt文件,将其信息复制到一个可用的声明矩阵,然后打印,不是文件,而是读取文件时生成的矩阵。不知什么原因,我似乎不能使它工作。它进入读取阶段,但无法存储数据 #include<stdio.h> #include<stdlib.h> #include<math.h> void main (void) { float matriz[20][20]; NOME_ARQUIVO: printf("Insira o
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
void main (void)
{
float matriz[20][20];
NOME_ARQUIVO: printf("Insira o nome do arquivo que contem as informacoes da secao U \n");
char na[100];
FILE *input;
gets(na);
printf("Nome do arquivo procurado : %s\n",na);
input = fopen(na , "r");
if (input == NULL)
{
printf("Arquivo inexistente ou incompativel.\n");
goto NOME_ARQUIVO;
}
else{
int i , j ;
for (i=0;i<20;++i)
for (j=0;j<20;++j)
fscanf(na,"%f",&matriz[i][j]);
fclose(input);
for (i=0;i<20;i++)
printf("\n");
for (j=0;j<20;j++)
printf("%f",matriz[i][j]);
}
}
#包括
#包括
#包括
真空总管(真空)
{
浮动矩阵[20][20];
NOME_ARQUIVO:printf(“NOME do ARQUIVO que contem as informacoes da secao U\n”);
char-na[100];
文件*输入;
获取(na);
printf(“Nome do arquivo procurado:%s\n”,na);
输入=fopen(na,“r”);
如果(输入==NULL)
{
printf(“Arquivo不存在或不兼容。\n”);
goto NOME_ARQUIVO;
}
否则{
int i,j;
对于(i=0;i您打开该文件是为了读取,而不是写入。该文件现在是input
,但您没有在任何其他地方引用input
使用input=fopen(na,“r+”)打开文件
读取和写入,但不显示写入文件的任何代码输入
此函数不安全,已从语言中删除。此外,请重新考虑使用转到
。有合法的用途,但这不是其中之一。我的意思是打开它进行读取。其目的是读取每个矩阵[][]从文件中提取,并将其存储在代码中声明的文件中。关于输入,我在文件打开时将其与“na”关联。我以为应该是这样的,但你说问题是你不能“存储”它,我认为这意味着你不能将其写入文件。“我在文件打开时将其与“na”关联”--na
是包含文件名的字符串,input
是由fopen()
返回的文件指针,并且是fscanf()
等所需的。谢谢@DavidBowling,我在混乱中错过了它。