[英]How to scan a formatted string using fscanf()?
我有多行文件。 每行遵循以下格式
`userID:$An Integer$$String:`
例如:
pyc1:$1$$Tnq7a6/C1wwyKyt0V/.BP/:
pyc2:$6$$Tnq7a6/C1wwyKyt0V/.BP/:
我應該如何使用fscanf()
來檢索userID
,整數以及$$
和:`之間的字符串?
這就是我現在所擁有的,但是沒有用。
int main(){
FILE * file = fopen("shadow.txt", "r");
char line[256] = {0};
char userID[30] = {0};
int hashType;
char hash[256] = {0};
int result = fscanf(file, "%s :$ %d $$ %s :", userID, &hashType, hash);
printf("%s\n", userID );
printf("%d\n", hashType );
printf("%s\n", hash );
}
我對為fscanf()
指定的格式了解不多,以實現此目的。 請幫忙。
嘗試這個:
while(ret = fscanf(file," %[^:] : $ %d $$ %[^:] :",userID,&hashtype,hash))
{
if(ret == EOF)
{
break;
}
printf("value of ret: %d\n",ret);
printf("%s , %d , %s",userid,id,str);
// . . .
}
在這里,int ret是:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.