我写的一个程序是要把通过USB传输来的数据放到不同的文件中,下面是我的一段程序:
for (DWORD d = 0; d < dwNumDevices; d++)
{
status = SI_GetProductString(d, devStr, SI_RETURN_SERIAL_NUMBER);
if (SI_Open(d,&m_hUSBDevice)==SI_SUCCESS)
{
BYTE bufWrite[MAX_PACKET_SIZE_WRITE];
BYTE bufRead[MAX_PACKET_SIZE_READ];
int d;
for (d=0x01;d <0x19;d++)
{
bufWrite[0]= d;//(BYTE)0x01; //IDC_EDIT_FileName01; unsigned long bytes_returned=0; SI_Write(m_hUSBDevice,bufWrite,4,&bytes_returned); memset(bufRead, 0, 1000); SI_Read(m_hUSBDevice,bufRead,1000,&bytes_returned,NULL);
?
? }
}
}
读的时候bufRead[0]地址,当其为0x01时800字节的数据放到(pDX, IDC_EDIT_FileName01, m_FileName01)和(pDX, IDC_EDIT_FileName02, m_FileName02)创建的文件中,……,当其为0x19时放到(pDX, IDC_EDIT_FileName49, m_FileName49)和(pDX, IDC_EDIT_FileName50, m_FileName50)创建的文件中。
传输的数据有一个字节的地址和800字节的数据,这800字节中有一部分是FileName01的,有一部分是FileName02的,而每一个文件中都有8种数据,也就是说800字节里要分成两部分存到两个文件中,每部分有四种数据,保存的时候要把它们分开。
程序写到这就是数据保存的问题,可我不会写了,请高手帮我看看怎么完善一下这个程序
for (DWORD d = 0; d < dwNumDevices; d++)
{
status = SI_GetProductString(d, devStr, SI_RETURN_SERIAL_NUMBER);
if (SI_Open(d,&m_hUSBDevice)==SI_SUCCESS)
{
BYTE bufWrite[MAX_PACKET_SIZE_WRITE];
BYTE bufRead[MAX_PACKET_SIZE_READ];
int d;
for (d=0x01;d <0x19;d++)
{
bufWrite[0]= d;//(BYTE)0x01; //IDC_EDIT_FileName01; unsigned long bytes_returned=0; SI_Write(m_hUSBDevice,bufWrite,4,&bytes_returned); memset(bufRead, 0, 1000); SI_Read(m_hUSBDevice,bufRead,1000,&bytes_returned,NULL);
?
? }
}
}
读的时候bufRead[0]地址,当其为0x01时800字节的数据放到(pDX, IDC_EDIT_FileName01, m_FileName01)和(pDX, IDC_EDIT_FileName02, m_FileName02)创建的文件中,……,当其为0x19时放到(pDX, IDC_EDIT_FileName49, m_FileName49)和(pDX, IDC_EDIT_FileName50, m_FileName50)创建的文件中。
传输的数据有一个字节的地址和800字节的数据,这800字节中有一部分是FileName01的,有一部分是FileName02的,而每一个文件中都有8种数据,也就是说800字节里要分成两部分存到两个文件中,每部分有四种数据,保存的时候要把它们分开。
程序写到这就是数据保存的问题,可我不会写了,请高手帮我看看怎么完善一下这个程序
第一字节是地址,然后
A--1: 80 字节
A--2: 80 字节
A--3: 80 字节
A--4:80 字节
B--1: 80 字节
B--2: 80 字节
B--3: 80 字节
B--4: 80 字节
B--5: 20 字节
A--5: 20 字节
A--6: 20 字节
B--6: 20 字节
A--7: 20 字节
B--7: 20 字节
A--8: 20 字节
B--8: 20 字节
总共801个字节
在数组中的排列方式就是你说的这个方式啊
从数组中对应位置取出数据写文件就行了
你要是不会写文件就搜搜CFile