⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cb_convert.cpp

📁 LINUX系统下基于ARM处理器的使用GPRS方式通过SOCKET数据包进行煤矿瓦斯监控的程序.这是在黑龙江省现场运行的程序源代码.
💻 CPP
字号:
#include "CB_Convert.h"
#include "CB_String.h"
#include "CB_Unit.h"
#include "Afx.h"

//##ModelId=4088B33503A3
CB_Convert::CB_Convert()
{
  initialize();
}


//##ModelId=4088B33503B7
CB_Convert::CB_Convert(char *srcName, char *destName)
{
  initialize();
  setSrcName(srcName);
  setDestName(destName);
}

//##ModelId=4088B336003D
CB_Convert::~CB_Convert()
{
}

//##ModelId=4088B336005B
void CB_Convert::initialize()
{
  clearSrcName();
  clearDestName();
}

//##ModelId=4088B336006F
char *CB_Convert::getSrcName()
{
  return m_srcName;
}

//##ModelId=4088B3360083
char *CB_Convert::getDestName()
{
  return m_destName;
}

//##ModelId=4088B3360097
void CB_Convert::setSrcName(char *name)
{
  clearSrcName();
  strcpy(m_srcName,name);
}

//##ModelId=4088B33600E7
void CB_Convert::setDestName(char *name)
{
  clearDestName();
  strcpy(m_destName,name);
}

//##ModelId=4088B336012E
int CB_Convert::convert()
{
  char *pSrcName = getSrcName();
  if(pSrcName == NULL) return -1;
  char *pDestName = getDestName();
  if(pDestName == NULL) return -1;
  FILE *fSrc,*fDest;
  fSrc = fopen(pSrcName,"r");
  if(fSrc == NULL) return -1;
  fDest = fopen(pDestName,"w+");
  if(fDest == NULL) return -1; 
  char bufSrc[257];
  int len = sizeof(bufSrc);
  CB_Unit::clearBuf(bufSrc,len);
  while(fgets(bufSrc,len,fSrc))
  {
    CB_Unit::lineToStr(bufSrc);
    convertDest(bufSrc);
    fputs(bufSrc,fDest); 
  }
 
  fclose(fSrc);
  fclose(fDest);
  
  return 0;
}

//##ModelId=4088B3360142
void CB_Convert::convertDest(char *src)
{
  CB_String cStr;
  cStr.split(src,',');
  char *p;
  int len = 0; 
  char destBuf[255];
  CB_Unit::clearBuf(destBuf,255);
  char countBuf[5];
  while(1==1)
  {
    int count = 0;
	CB_Unit::clearBuf(countBuf,5);
    p = cStr.getNext();
	CB_Unit::trimRight(p);
    if(p == NULL) break;
   	count = strlen(p);
	sprintf(countBuf,"%04d",count);
	strcat(destBuf,countBuf);
	strcat(destBuf,p);
	len += count;
	len +=4;
  }
  char buf[257];
  CB_Unit::clearBuf(buf,257);
  len += 5 ;
  sprintf(countBuf,"%04d",len);
  strcat(buf,countBuf);
  strcat(buf,destBuf);
  strcat(buf,"0001");
  strcat(buf,"0");
  strcpy(src,buf);
}

//##ModelId=409C784902C0
void CB_Convert::clearSrcName()
{
  int len = sizeof(m_srcName); 
  CB_Unit::clearBuf(m_srcName,len);
}

//##ModelId=409C784B0128
void CB_Convert::clearDestName()
{
  int len = sizeof(m_destName);
  CB_Unit::clearBuf(m_destName,len);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -