From 5368472ccd597eed27f9ee080cd2a1c68c1f543b Mon Sep 17 00:00:00 2001 From: zhaolei <353719554@qq.com> Date: Thu, 5 Feb 2026 09:15:48 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A1=A8=E6=A0=BC=E6=95=B0=E6=8D=AE=E6=9F=A5?= =?UTF-8?q?=E7=9C=8B=E8=A1=A8=E5=A4=B4=E4=B9=B1=E7=A0=81=E9=97=AE=E9=A2=98?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Slfio/src/slf.cpp | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/Slfio/src/slf.cpp b/Slfio/src/slf.cpp index 4414a2b..4ddd998 100644 --- a/Slfio/src/slf.cpp +++ b/Slfio/src/slf.cpp @@ -2475,15 +2475,17 @@ int CSlfIO::SetTableHead(int index,DWORD RecordCount,DWORD FieldCount,Slf_TABLE_ if(IsWis) return SetWisTableHead(index,RecordCount,FieldCount,FieldInfo); else { Slf_OBJECT_FIELD *pf=new Slf_OBJECT_FIELD[FieldCount]; + QString strMojibake = "屯"; //乱码判断 + QByteArray ArrayMojibake = strMojibake.toLocal8Bit().data(); for(int i=0;istrlen(FieldInfo[i].Name)) len=strlen(FieldInfo[i].Name); @@ -2536,6 +2538,8 @@ bool CSlfIO::SetTableFieldInfo(int index,Slf_TABLE_FIELD *FieldInfo) int FieldCount=m_SlfObjectEntry[index].FieldNum; Slf_OBJECT_FIELD *pf=new Slf_OBJECT_FIELD[FieldCount]; GetSlfTableFieldInfo(index,pf); + QString strMojibake = "屯"; //乱码判断 + QByteArray ArrayMojibake = strMojibake.toLocal8Bit().data(); for(int i=0;isizeof(pf[i].HZName)) len=sizeof(pf[i].HZName); strncpy(pf[i].HZName,FieldInfo[i].HZName,sizeof(pf[i].HZName)); pf[i].HZName[len]=0; - if(strncmp(FieldInfo[i].Unit,"屯",2)==0) strcpy(FieldInfo[i].Unit,""); + if(strncmp(FieldInfo[i].Unit,ArrayMojibake.data()/*"屯"*/,2)==0) strcpy(FieldInfo[i].Unit,""); len=strlen(FieldInfo[i].Unit); if(len>sizeof(pf[i].Unit)) len=sizeof(pf[i].Unit); strncpy(pf[i].Unit,FieldInfo[i].Unit,sizeof(pf[i].Unit)); pf[i].Unit[len]=0; - if(strncmp(FieldInfo[i].HZUnit,"屯",2)==0) strcpy(FieldInfo[i].HZUnit,FieldInfo[i].Unit); + if(strncmp(FieldInfo[i].HZUnit,ArrayMojibake.data()/*"屯"*/,2)==0) strcpy(FieldInfo[i].HZUnit,FieldInfo[i].Unit); len=strlen(FieldInfo[i].HZUnit); if(len>sizeof(pf[i].HZUnit)) len=sizeof(pf[i].HZUnit); @@ -2579,6 +2583,8 @@ bool CSlfIO::GetTableFieldInfo(int index,Slf_TABLE_FIELD *FieldInfo) Slf_OBJECT_FIELD *pf=new Slf_OBJECT_FIELD[FieldCount]; memset(pf,0,sizeof(Slf_OBJECT_FIELD)*FieldCount); GetSlfTableFieldInfo(index,pf); + QString strMojibake = "屯"; //乱码判断 + QByteArray ArrayMojibake = strMojibake.toLocal8Bit().data(); for(int i=0;i