その後、ファイル操作を使用し、大量のデータ(特に百万以上の行のテーブルコントロールはほとんどの最大数は、覚えていない)場合は、カトンの問題保存、表示されます応答しない場合は、あなたの中にExcelに制御テーブルのデータを保存し、データテーブルは、XLSまたはTXTのようにして格納されてすぐに発見、上記の問題は発生しません:
1)次のようにコードにExcelに直接保存:
リバース(STRの、MYDATA、行); // // A1:線ZZ数
Excel_NewApp(NULL ,. 1、LOCALE_NEUTRAL、0、&ExcelAppHandle); //は、新しい新しいアプリケーションオブジェクトを作成し、オブジェクトへのハンドルを取得します。
Excel_GetProperty(ExcelAppHandle、NULL、Excel_AppWorkbooks、CAVT_OBJHANDLE、&ExcelWorkbooksHandle);
Excel_WorkbooksAdd(ExcelWorkbooksHandle、NULL、CA_DEFAULT_VAL 、&ExcelWorkbookHandle);
Excel_GetProperty(ExcelAppHandle、NULL、Excel_AppSheets、CAVT_OBJHANDLE、&ExcelSheetsHandle);
Excel_SheetsItem(ExcelSheetsHandle、NULL、CA_VariantInt(1)、&ExcelWorksheetHandle)。
Excel_WorksheetActivate(ExcelWorksheetHandle、NULL); // STRS = >> A1:列数(列标识ZZ)行数
ExcelRpt_WriteDataFromTableControl(ExcelWorksheetHandle、STRS、hTablePanel、TABLE_DISTABLE)。テーブルコントロールから//書き込みデータ
ExcelRpt_WorkbookSave(ExcelWorkbookHandle、sheetSavePath、ExRConst_DefaultFileFormat)。// ExRConst_Excel2 ExRConst_DefaultFileFormat
Excel_AppQuit(ExcelAppHandle、NULL);
CA_DiscardObjHandle(ExcelAppHandle)。
CA_DiscardObjHandle(ExcelWorkbooksHandle)。
CA_DiscardObjHandle(ExcelWorkbookHandle)。
CA_DiscardObjHandle(ExcelSheetsHandle)。
CA_DiscardObjHandle(ExcelWorksheetHandle)。
123456789101112131415
2)使用文件读写的方式保存:
int型numberOfColumns。
int型の行。
double値;
私は、J int型、
int型属性値;
12345
GetProjectDir(ExcelFileNameを); //取得し、現在のディレクトリ名プロジェクト
MakePathname(ExcelFileName、 "DataCache.xls"、 ExcelFileName); // exceを保存するファイル名設定
ファイルを* FPS = NULL;
FPS = fopen(ExcelFileName、 "W");
GetNumTableColumns(panelHandle、controlID、&NumberOfColumns);列の//数
GetNumTableRows(panelHandle、controlID、&行 ); // 行の数
のために(J = 1; J <= NumberOfColumns; J ++)
{
GetTableCellVal (panelHandle、controlID、MakePoint(J 、1)、table_title [J]); // table_titleの名前取得
関数fprintf(FPS、 "%S \ T"、table_titleを[J]);
}
関数fprintf(FPS、 "\ N-") ;
のためには、(I 2 =; I <=行; I ++)
{
(J = 1; J <= NumberOfColumns。J ++)
{
GetTableCellAttribute(panelHandle、controlID、MakePoint(J、I)、ATTR_CELL_TYPE、および属性値);
IF(属性値== 0)
{
GetTableCellVal(panelHandle、controlID、MakePoint(J、I)、&値); //データ取得
(FPS関数fprintfを"%ル\ T"、値);
}
そう関数fprintf(FPS、 "\ T");
}
関数fprintf(FPS) "\ N-";
J = 1;
}
FCLOSE(FPS);
------- ---------
免責事項:この記事はCC 4.0 BY-SAの著作権契約書に従って、CSDNブロガー「壊れたコンセプトHK」オリジナル記事です、元のソースのリンクと、この文を添付してください、再現。
オリジナルリンクします。https://blog.csdn.net/qq_26682769/article/details/92978639
LabWindowsCVI:保存エクセルカトンの問題解決への制御テーブル内のデータ(RPM)
おすすめ
転載: www.cnblogs.com/xihong2014/p/12348512.html
おすすめ
ランキング