生成word文档的问题
Function DBGird2Word(DBGrid: TDBGridEh): Boolean;
var
Count,I,J:Integer;
Doc:OleVariant;
CurrColumn,RecordNum:Integer;
wTable: Variant;
begin
try
Doc:=CreateOleObject('Word.Application');
Doc.Visible:=True;
Doc.Documents.Add;
except
Result:=false;
Exit;
end;
Count:=DBGrid.Columns.Count-1;
CurrColumn:=0;
for I:=0 to Count do
begin
if DBGrid.Columns.Items[I].Visible then
begin
Inc(CurrColumn);
end;
end;
RecordNum:=DBGrid.DataSource.DataSet.RecordCount+1;
wTable:=Doc.ActiveDocument.Tables.Add(Doc.ActiveDocument.Range(0, 0),RecordNum,CurrColumn);
wTable.Columns.AutoFit;
CurrColumn:=0;
for I:=0 to Count do
begin
if DBGrid.Columns.Items[I].Visible then
begin
wTable.Cell(1,CurrColumn+1).Range.InsertAfter(DBGrid.Columns.Items[I].Title.Caption);
Inc(CurrColumn);
end;
end;
J:=1;
DBGrid.DataSource.DataSet.First;
while not DBGrid.DataSource.DataSet.Eof do
begin
Inc(J);
CurrColumn:=0;
for I:=0 to Count do
begin
if DBGrid.Columns.Items[I].Visible then
begin
wTable.Cell(J,CurrColumn+1).Range.InsertAfter(DBGrid.Columns[I].Field.DisplayText);
Inc(CurrColumn);
end;
end;
DBGrid.DataSource.DataSet.Next;
end;
end;
相关推荐
freemarker模板技术生成复杂word文档---解决了编码问题
Word从2003开始支持XML格式,用XML来做就很简单了。 大致的思路是先用office2003或者2007编辑好word的样式,然后另存为xml,将xml翻译为FreeMarker模板,最后用java来解析FreeMarker模板并输出‘.doc’ word文档。经测试这样方式生成的word文档完全符合office标准,样式、内容控制非常便利,打印也不会变形,生成的文档和office中编辑文档完全一样。 word的几个主要xml标志 w:body 正文内容 w:p 一个段落 w:tbl 表格数据 w:tblPr、w:tblGrid 大概看了下,是定义表格样式,可以先在word中定义好,这部分一般不用动态生成 w:tr 表格行 w:tc 行的元素 <w:p ><w:r><w:br w:type="page" /></w:r></w:p> 分页符 基本步骤 1.用word做一个需要的格式模板,在需要替换的部分用“____”标记,存储为xml格式。 2.用myEclipse打开xml文档把“____”修改为freemarker标记 3.写java程序根据模板生成word 总结,之前在网上查到这个资料怎么调试都失败,后来经过反复查找发现是编码问题导致生成word格式错误,已经修正,希望能给大家带来帮助。 效率测试生成100000行数据大概4000毫秒左右 完整程序代码已经上传! 关于FreeMarker模板编辑说明在我的资源中有中文文档,需要的朋友可以去下载。
基于Python + LangChain + Chroma开发的AI RAG 法律文档问答系统,支持输入法规条文、上传 PDF/Word 文档入库,基于检索增强生成实现精准的法律问题问答(源码+文档)
基于Python + LangChain + Chroma开发的AI RAG 法律文档问答系统,支持输入法规条文、上传 PDF/Word 文档入库,基于检索增强生成实现精准的法律问题问答(源码+文档) 功能概览 1. 爬取法律文档:从国家法律法规数据库抓取条文并写入向量库 2. 上传 PDF/Word:本地文件 → 切片 → 生成 Embedding → 存入 Chroma 3. 检索 TopK:根据问题检索最相关的条文片段 4. 大模型回答:基于检索结果由 LLM 生成答案(RAG) 环境要求 - Python 3.10+ - 建议使用虚拟环境 .venv 安装步骤 1. 创建并激活虚拟环境(在项目根目录执行,.venv 需自行创建): Windows (PowerShell): python -m venv .venv .venv\Scripts\Activate.ps1 Windows (CMD): python -m venv .venv .venv\Scripts\activate.bat Linux / macOS: python3 -m venv .venv source .venv/bin/activate 2. 安装依赖: pip install -r requirements.txt 首次运行会下载 Embedding 模型(all-MiniLM-L6-v2),可能较慢。若出现 SSL/连接 Hugging Face 失败,可在 .env 中设置 EMBEDDING_LOCAL_FILES_ONLY=1 并确保模型已 缓存,或使用镜像:HF_ENDPOINT=https://hf-mirror.com
ftl模板生成的word文档打不开
使用ftl用ftl模板生成的word文档打不开,一直未响应的可能问题如下: 1.word模板另存为xml格式文件的时候,选择Word 2003 XML格式(兼容问题) 2.模板中有图片的时候,将ftl文件中图片的base64编码改成变量${xxx} 改为对应的变量名 3.图片的标签必须在同一行,不能跳行,中间不能加空格或者tab缩进 作者:吕小宾
[已解决]使用OpenXML SDK生成Word文档...文档是否以兼容模式打开?
有点迟了,但是我不会使用XML文件这样的外部依赖项来实现。我的建议是:私有静态void AddSettingsToMainDocumentPart(MainDocumentPart part) settingsPart.Settings =新设置(...
java使用freemarker生成复杂的word文档
使用freemarker生成复杂的word文档,生成的文档支持office查看,但是使用国产中标普华貌似有问题,office、wps没有问题。


数据库相关
