Datei #qowgcr32-3487
Hochgeladen von einem anonymen Benutzer - 26/07/2010 22:03 - 23 Zugriffe
Quellcode
void Words::save()
{int i,j;
DWORD bytes;wchar_t stroka0[100];
QString FileName = QFileDialog::getSaveFileName (this, "Сохранить файл...", "game.bal", "файлы (*.bal)");
stroka0[FileName.toWCharArray(stroka0)]=0;
HANDLE File = CreateFile (stroka0, GENERIC_WRITE, NULL, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
WriteFile(File,(void *)&n, sizeof(int),&bytes,NULL);
WriteFile(File,(void *)&m, sizeof(int),&bytes,NULL);
for(i=0; i<n; i++)
{for(j=0; j<m; j++)
{QChar sym=matrix[i][j];
WriteFile(File,(void *)&sym, sizeof(QChar),&bytes,NULL);
}}WriteFile(File,(void *)&mayAdd, sizeof(bool),&bytes,NULL);
wchar_t stroka1[9];
stroka1[name.toWCharArray(stroka1)]=0;
WriteFile(File,(void *)&stroka1, sizeof(stroka1),&bytes,NULL);
wchar_t stroka2[22];
stroka2[ava.toWCharArray(stroka2)]=0;
WriteFile(File,(void *)&stroka2, sizeof(stroka2),&bytes,NULL);
int count1=l1.size();
WriteFile(File,(void *)&count1, sizeof(int),&bytes,NULL);
for (i=0; i<count1; i++)
{stroka2[l1[0].toWCharArray(stroka2)]=0;
WriteFile(File,(void *)&stroka2, sizeof(stroka2),&bytes,NULL);
}int count2=l2.size();
WriteFile(File,(void *)&count2, sizeof(int),&bytes,NULL);
for (i=0; i<count2; i++)
{stroka2[l2[0].toWCharArray(stroka2)]=0;
WriteFile(File,(void *)&stroka2, sizeof(stroka2),&bytes,NULL);
}WriteFile(File,(void *)&size1, sizeof(int),&bytes,NULL);
WriteFile(File,(void *)&size2, sizeof(int),&bytes,NULL);
CloseHandle(File);
}void Words::load()
{QString filename = QFileDialog::getOpenFileName (this, "Открыть файл...", "", "файлы (*.bal)");
int i,j;
DWORD bytes;wchar_t stroka0[100];
stroka0[filename.toWCharArray(stroka0)]=0;
HANDLE File = CreateFile (stroka0, GENERIC_READ, NULL, NULL, OPEN_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
ReadFile(File,(void *)&n, sizeof(int),&bytes,NULL);
ReadFile(File,(void *)&m, sizeof(int),&bytes,NULL);
for(i=0; i<n; i++)
{for(j=0; j<m; j++)
{QChar sym;WriteFile(File,(void *)&sym, sizeof(QChar),&bytes,NULL);
matrix[i][j]=sym;
}}ReadFile(File,(void *)&mayAdd, sizeof(bool),&bytes,NULL);
wchar_t stroka1[9];
ReadFile(File,(void *)&stroka1, sizeof(stroka1),&bytes,NULL);
name=QString::fromWCharArray(stroka1);
wchar_t stroka2[22];
ReadFile(File,(void *)&stroka2, sizeof(stroka2),&bytes,NULL);
ava=QString::fromWCharArray(stroka2);
int count1;ReadFile(File,(void *)&count1, sizeof(int),&bytes,NULL);
for (i=0; i<count1; i++)
{QString str;ReadFile(File,(void *)&stroka2, sizeof(stroka2),&bytes,NULL);
str=QString::fromWCharArray(stroka2);
l1<<str;
}int count2;ReadFile(File,(void *)&count2, sizeof(int),&bytes,NULL);
for (i=0; i<count2; i++)
{QString str;ReadFile(File,(void *)&stroka2, sizeof(stroka2),&bytes,NULL);
str=QString::fromWCharArray(stroka2);
l2<<str;
}ReadFile(File,(void *)&size1, sizeof(int),&bytes,NULL);
ReadFile(File,(void *)&size2, sizeof(int),&bytes,NULL);
CloseHandle(File);
}
