You've already forked lazarus-ccr
fpspreadsheet: Improves OpenDocument support
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@695 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
@ -10,7 +10,8 @@ program excel5read;
|
|||||||
{$mode delphi}{$H+}
|
{$mode delphi}{$H+}
|
||||||
|
|
||||||
uses
|
uses
|
||||||
Classes, SysUtils, fpspreadsheet, xlsbiff5, laz_fpspreadsheet;
|
Classes, SysUtils, fpspreadsheet, xlsbiff5,
|
||||||
|
laz_fpspreadsheet;
|
||||||
|
|
||||||
var
|
var
|
||||||
MyWorkbook: TsWorkbook;
|
MyWorkbook: TsWorkbook;
|
||||||
@ -22,7 +23,7 @@ var
|
|||||||
begin
|
begin
|
||||||
// Open the input file
|
// Open the input file
|
||||||
MyDir := ExtractFilePath(ParamStr(0));
|
MyDir := ExtractFilePath(ParamStr(0));
|
||||||
InputFileName := MyDir + 'test' + STR_EXCEL_EXTENSION;
|
InputFileName := MyDir + 'test.xls';
|
||||||
WriteLn('Opening input file ', InputFilename);
|
WriteLn('Opening input file ', InputFilename);
|
||||||
|
|
||||||
// Create the spreadsheet
|
// Create the spreadsheet
|
||||||
@ -39,8 +40,10 @@ begin
|
|||||||
for i := 0 to MyWorksheet.GetCellCount - 1 do
|
for i := 0 to MyWorksheet.GetCellCount - 1 do
|
||||||
begin
|
begin
|
||||||
CurCell := MyWorkSheet.GetCellByIndex(i);
|
CurCell := MyWorkSheet.GetCellByIndex(i);
|
||||||
WriteLn('Row: ', CurCell^.Row, ' Col: ', CurCell^.Col, ' Value: ',
|
WriteLn('Row: ', CurCell^.Row,
|
||||||
UTF8ToAnsi(MyWorkSheet.ReadAsUTF8Text(CurCell^.Row, CurCell^.Col))
|
' Col: ', CurCell^.Col, ' Value: ',
|
||||||
|
UTF8ToAnsi(MyWorkSheet.ReadAsUTF8Text(CurCell^.Row,
|
||||||
|
CurCell^.Col))
|
||||||
);
|
);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
@ -38,7 +38,7 @@
|
|||||||
<Filename Value="excel5write.lpr"/>
|
<Filename Value="excel5write.lpr"/>
|
||||||
<IsPartOfProject Value="True"/>
|
<IsPartOfProject Value="True"/>
|
||||||
<UnitName Value="excel5write"/>
|
<UnitName Value="excel5write"/>
|
||||||
<CursorPos X="3" Y="17"/>
|
<CursorPos X="1" Y="8"/>
|
||||||
<TopLine Value="1"/>
|
<TopLine Value="1"/>
|
||||||
<EditorIndex Value="0"/>
|
<EditorIndex Value="0"/>
|
||||||
<UsageCount Value="309"/>
|
<UsageCount Value="309"/>
|
||||||
|
@ -10,7 +10,8 @@ program excel5write;
|
|||||||
{$mode delphi}{$H+}
|
{$mode delphi}{$H+}
|
||||||
|
|
||||||
uses
|
uses
|
||||||
Classes, SysUtils, fpspreadsheet, xlsbiff5, laz_fpspreadsheet;
|
Classes, SysUtils, fpspreadsheet, xlsbiff5,
|
||||||
|
laz_fpspreadsheet;
|
||||||
|
|
||||||
var
|
var
|
||||||
MyWorkbook: TsWorkbook;
|
MyWorkbook: TsWorkbook;
|
||||||
@ -19,18 +20,19 @@ var
|
|||||||
MyDir: string;
|
MyDir: string;
|
||||||
i: Integer;
|
i: Integer;
|
||||||
begin
|
begin
|
||||||
// Open the output file
|
|
||||||
MyDir := ExtractFilePath(ParamStr(0));
|
MyDir := ExtractFilePath(ParamStr(0));
|
||||||
|
|
||||||
// Create the spreadsheet
|
// Create the spreadsheet
|
||||||
MyWorkbook := TsWorkbook.Create;
|
MyWorkbook := TsWorkbook.Create;
|
||||||
MyWorksheet := MyWorkbook.AddWorksheet('My Worksheet');
|
MyWorksheet := MyWorkbook.AddWorksheet('My Worksheet');
|
||||||
|
|
||||||
// Write some number cells
|
// Write some cells
|
||||||
MyWorksheet.WriteNumber(0, 0, 1.0);
|
MyWorksheet.WriteNumber(0, 0, 1.0);// A1
|
||||||
MyWorksheet.WriteNumber(0, 1, 2.0);
|
MyWorksheet.WriteNumber(0, 1, 2.0);// B1
|
||||||
MyWorksheet.WriteNumber(0, 2, 3.0);
|
MyWorksheet.WriteNumber(0, 2, 3.0);// C1
|
||||||
MyWorksheet.WriteNumber(0, 3, 4.0);
|
MyWorksheet.WriteNumber(0, 3, 4.0);// D1
|
||||||
|
MyWorksheet.WriteUTF8Text(4, 2, 'Total:');// C5
|
||||||
|
MyWorksheet.WriteNumber(4, 3, 10); // D5
|
||||||
|
|
||||||
{ Uncommend this to test large XLS files
|
{ Uncommend this to test large XLS files
|
||||||
for i := 2 to 20 do
|
for i := 2 to 20 do
|
||||||
@ -49,14 +51,14 @@ begin
|
|||||||
// Creates a new worksheet
|
// Creates a new worksheet
|
||||||
MyWorksheet := MyWorkbook.AddWorksheet('My Worksheet 2');
|
MyWorksheet := MyWorkbook.AddWorksheet('My Worksheet 2');
|
||||||
|
|
||||||
// Write some string cells
|
{ // Write some string cells
|
||||||
MyWorksheet.WriteUTF8Text(0, 0, 'First');
|
MyWorksheet.WriteUTF8Text(0, 0, 'First');
|
||||||
MyWorksheet.WriteUTF8Text(0, 1, 'Second');
|
MyWorksheet.WriteUTF8Text(0, 1, 'Second');
|
||||||
MyWorksheet.WriteUTF8Text(0, 2, 'Third');
|
MyWorksheet.WriteUTF8Text(0, 2, 'Third');
|
||||||
MyWorksheet.WriteUTF8Text(0, 3, 'Fourth');
|
MyWorksheet.WriteUTF8Text(0, 3, 'Fourth');}
|
||||||
|
|
||||||
// Save the spreadsheet to a file
|
// Save the spreadsheet to a file
|
||||||
MyWorkbook.WriteToFile(MyDir + 'test' + STR_EXCEL_EXTENSION, sfExcel5);
|
MyWorkbook.WriteToFile(MyDir + 'test.xls', sfExcel5);
|
||||||
MyWorkbook.Free;
|
MyWorkbook.Free;
|
||||||
end.
|
end.
|
||||||
|
|
||||||
|
@ -11,7 +11,7 @@
|
|||||||
<TargetFileExt Value=".exe"/>
|
<TargetFileExt Value=".exe"/>
|
||||||
<Title Value="opendocwrite"/>
|
<Title Value="opendocwrite"/>
|
||||||
<UseAppBundle Value="False"/>
|
<UseAppBundle Value="False"/>
|
||||||
<ActiveEditorIndexAtStart Value="4"/>
|
<ActiveEditorIndexAtStart Value="0"/>
|
||||||
</General>
|
</General>
|
||||||
<VersionInfo>
|
<VersionInfo>
|
||||||
<ProjectVersion Value=""/>
|
<ProjectVersion Value=""/>
|
||||||
@ -38,7 +38,7 @@
|
|||||||
<Filename Value="opendocwrite.lpr"/>
|
<Filename Value="opendocwrite.lpr"/>
|
||||||
<IsPartOfProject Value="True"/>
|
<IsPartOfProject Value="True"/>
|
||||||
<UnitName Value="opendocwrite"/>
|
<UnitName Value="opendocwrite"/>
|
||||||
<CursorPos X="1" Y="34"/>
|
<CursorPos X="33" Y="35"/>
|
||||||
<TopLine Value="20"/>
|
<TopLine Value="20"/>
|
||||||
<EditorIndex Value="0"/>
|
<EditorIndex Value="0"/>
|
||||||
<UsageCount Value="309"/>
|
<UsageCount Value="309"/>
|
||||||
@ -116,8 +116,8 @@
|
|||||||
<Unit10>
|
<Unit10>
|
||||||
<Filename Value="..\..\fpspreadsheet.pas"/>
|
<Filename Value="..\..\fpspreadsheet.pas"/>
|
||||||
<UnitName Value="fpspreadsheet"/>
|
<UnitName Value="fpspreadsheet"/>
|
||||||
<CursorPos X="1" Y="794"/>
|
<CursorPos X="1" Y="102"/>
|
||||||
<TopLine Value="792"/>
|
<TopLine Value="85"/>
|
||||||
<EditorIndex Value="4"/>
|
<EditorIndex Value="4"/>
|
||||||
<UsageCount Value="100"/>
|
<UsageCount Value="100"/>
|
||||||
<Loaded Value="True"/>
|
<Loaded Value="True"/>
|
||||||
@ -134,7 +134,7 @@
|
|||||||
<CursorPos X="1" Y="384"/>
|
<CursorPos X="1" Y="384"/>
|
||||||
<TopLine Value="373"/>
|
<TopLine Value="373"/>
|
||||||
<EditorIndex Value="2"/>
|
<EditorIndex Value="2"/>
|
||||||
<UsageCount Value="21"/>
|
<UsageCount Value="22"/>
|
||||||
<Loaded Value="True"/>
|
<Loaded Value="True"/>
|
||||||
</Unit12>
|
</Unit12>
|
||||||
<Unit13>
|
<Unit13>
|
||||||
@ -143,7 +143,7 @@
|
|||||||
<CursorPos X="1" Y="35"/>
|
<CursorPos X="1" Y="35"/>
|
||||||
<TopLine Value="16"/>
|
<TopLine Value="16"/>
|
||||||
<EditorIndex Value="3"/>
|
<EditorIndex Value="3"/>
|
||||||
<UsageCount Value="21"/>
|
<UsageCount Value="22"/>
|
||||||
<Loaded Value="True"/>
|
<Loaded Value="True"/>
|
||||||
</Unit13>
|
</Unit13>
|
||||||
<Unit14>
|
<Unit14>
|
||||||
@ -158,7 +158,7 @@
|
|||||||
<CursorPos X="44" Y="13"/>
|
<CursorPos X="44" Y="13"/>
|
||||||
<TopLine Value="1"/>
|
<TopLine Value="1"/>
|
||||||
<EditorIndex Value="1"/>
|
<EditorIndex Value="1"/>
|
||||||
<UsageCount Value="16"/>
|
<UsageCount Value="17"/>
|
||||||
<Loaded Value="True"/>
|
<Loaded Value="True"/>
|
||||||
</Unit15>
|
</Unit15>
|
||||||
<Unit16>
|
<Unit16>
|
||||||
@ -186,7 +186,7 @@
|
|||||||
<CursorPos X="36" Y="9"/>
|
<CursorPos X="36" Y="9"/>
|
||||||
<TopLine Value="1"/>
|
<TopLine Value="1"/>
|
||||||
<EditorIndex Value="5"/>
|
<EditorIndex Value="5"/>
|
||||||
<UsageCount Value="13"/>
|
<UsageCount Value="14"/>
|
||||||
<Loaded Value="True"/>
|
<Loaded Value="True"/>
|
||||||
</Unit19>
|
</Unit19>
|
||||||
</Units>
|
</Units>
|
||||||
|
@ -24,15 +24,13 @@ begin
|
|||||||
MyWorkbook := TsWorkbook.Create;
|
MyWorkbook := TsWorkbook.Create;
|
||||||
MyWorksheet := MyWorkbook.AddWorksheet('My Worksheet');
|
MyWorksheet := MyWorkbook.AddWorksheet('My Worksheet');
|
||||||
|
|
||||||
// Write some number cells
|
// Write some cells
|
||||||
MyWorksheet.WriteNumber(0, 0, 1.0);
|
MyWorksheet.WriteNumber(0, 0, 1.0);// A1
|
||||||
MyWorksheet.WriteNumber(0, 1, 2.0);
|
MyWorksheet.WriteNumber(0, 1, 2.0);// B1
|
||||||
MyWorksheet.WriteNumber(0, 2, 3.0);
|
MyWorksheet.WriteNumber(0, 2, 3.0);// C1
|
||||||
MyWorksheet.WriteNumber(0, 3, 4.0);
|
MyWorksheet.WriteNumber(0, 3, 4.0);// D1
|
||||||
|
MyWorksheet.WriteUTF8Text(4, 2, 'Total:');// C5
|
||||||
// Write some string cells
|
MyWorksheet.WriteNumber(4, 3, 10); // D5
|
||||||
MyWorksheet.WriteUTF8Text(4, 2, 'Total:');
|
|
||||||
MyWorksheet.WriteNumber(4, 3, 10.0);
|
|
||||||
|
|
||||||
// Creates a new worksheet
|
// Creates a new worksheet
|
||||||
MyWorksheet := MyWorkbook.AddWorksheet('My Worksheet 2');
|
MyWorksheet := MyWorkbook.AddWorksheet('My Worksheet 2');
|
||||||
|
Reference in New Issue
Block a user