wincc读取txt文件中的数据并给内部变量a,
例如数据为“78963”
程序如下:
#pragma option(mbcs)
#include "apdefap.h"
void onClick(char* lpszPictureName,char* lpszObjectName,char* lpszPropertyName)
{
FILE * datei;
duoble x:
datei=fopen("D:\\aa.txt","r");
fscanf(datei,“%d\r\n”x)
fclose(datei);
SetTagDouble("a",x)
}
最后显示结果为“0”
请教如何正确读出数据,并用内部变量显示出来
问题补充:
我是要内部变量“a”为32位浮点数,先将“a”写入txt文件保存,然后将其读出,给变量“a”。
最佳答案
数据类型设置错误,如果要读取的数为长整数,应将x声明为long,而SetTagDouble也应改为SetTagDWord
FILE * datei;
long x;
datei=fopen("D:\\aa.txt","r");
if (!datei) {printf("\r\nOpen Txt File Error!");fclose(datei);return;}
fscanf(datei,"%ld",&x);
printf("\r\nx1=%ld",x);
fclose(datei);
SetTagDWord("b",x);
早说是浮点数嘛!呵呵!32为浮点数声明为float就可以了,同样使用SetTagFloat函数,当然你的变量a也要是32为浮点数才行
FILE * datei;
float x;
datei=fopen("D:\\aa.txt","r");
if (!datei) {printf("\r\nOpen Txt File Error!");fclose(datei);return;}
fscanf(datei,"%f",&x);
printf("\r\nx1=%f",x);
fclose(datei);
SetTagFloat("a",x);
提问者对于答案的评价:
非常满意,谢谢
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc277060.html