我正在做一个cgi。我在 html 中使用 POST 方法,我从 C 中的标准输入接收到一个字符串。我想获取我使用 post 方法上传的文件的内容。所以我必须在 Content-Type:(something) (content) 之后到达 STDIN 的部分。问题是我找不到如何分割空白的方法。
有什么想法吗?
//---post functions---
lenstr=getenv("CONTENT_LENGTH");
if(lenstr == NULL || sscanf(lenstr,"%ld",&len)!=1 || len > 1048576)
{
printf("<P>Error in invocation - wrong FORM probably.");
}
else{
fread(input, len+1,1, stdin);
strtok(input,":");
strtok(NULL,":");
strtok(NULL,"/");
//strtok(NULL," ");
input_p3=strtok(NULL,"");
len_p=strlen(input)-strlen("Content-Disposition");
len_p3=strlen(input_p3);
strcpy(paper->paper_file_name,input_p3);
for(u=0;u<len_p3-len_p-2;u++){
printf("%c",paper->paper_file_name[u]);
}
如果我取消注释我拥有的 strtok //,它不起作用。但是这种方式例如打印一个txt文件“plain(content)”并且plain来自text/plain