将文本文件中的一行分配给C中的变量

我正在尝试将文本文件的一行分配给C中的变量,这就是我一直在使用的内容。

public List<SingleTripDetails> getamountMadeToday(Date date,String email) {
        return driverRiderApplicationRepository.findByStatusAndDateCreated(SingleTripDetailsStatus.ENDED,new Timestamp(date.getTime()));
    }

but it does not work. What could I be doing wrong?

这不起作用,只是返回一个空值。我该怎么办?

pony0517 回答:将文本文件中的一行分配给C中的变量

您正在尝试将字符串分配给char。

尝试一下

FILE* filePointer = fopen(fileName,"r");
char output[256];
fscanf(filePointer,"%s",output); 

请注意,您的行不能超过255个字符。

,

fscanf的“%s”格式字符期望

  

下一个指针必须是一个指向长字符数组的指针   足以容纳输入序列和终止的空字节   ('\ 0'),这是自动添加的。输入字符串在白色处停止   空间或最大字段宽度(以先出现者为准)。

这意味着您需要提供一个字符数组,例如actualAnswer1

,而不是char类型的output

fscanf(filePointer,output);

上一行可以从文件中读取最多255个字符的字符串,并在第256个位置放置一个“ 0”。如果文件中的第一个字符串长度超过255个字符,则程序将崩溃。您可以提供一个字段宽度说明符来防止这种情况。

fscanf(filePointer,"%255s",output);

本文链接:https://www.f2er.com/3157888.html

大家都在问