【已解决】Unity 使用NPOI 写word文档报错:System.TypeLoadException:……0.86.0.518

news2024/12/23 18:35:34

报错显示

System.TypeLoadException: Could not resolve type with token 01000080 from typeref (expected class 'ICSharpCode.SharpZipLib.Zip.UseZip64' in assembly 'ICSharpCode.SharpZipLib, Version=0.86.0.518, Culture=neutral, PublicKeyToken=1b03e6acf1164f73')
at NPOI.OpenXml4Net.OPC.OPCPackage.Save (System.IO.Stream outputStream) [0x00006] in <99616821a9154f2ca86e81f2f10656d7>:0
at NPOI.POIXMLDocument.Write (System.IO.Stream stream) [0x00096] in <a0e722754d7f4b6eab4924ea5702b802>:0
at WordCreat_Script.createParagraph (NPOI.XWPF.UserModel.ParagraphAlignment _alignment, System.Int32 _fontSize, System.String _color, System.String _content) [0x00044] in E:\Unity20221231\SqliteTest\Assets_VR_HBT_HR_Scripts\Create_WordDoc_Scripts\WordCreat_Script.cs:38
UnityEngine.Debug:LogError (object)
WordCreat_Script:createParagraph (NPOI.XWPF.UserModel.ParagraphAlignment,int,string,string) (at Assets/_VR_HBT_HR_Scripts/Create_WordDoc_Scripts/WordCreat_Script.cs:42)
WordCreat_Script:Start () (at Assets/_VR_HBT_HR_Scripts/Create_WordDoc_Scripts/WordCreat_Script.cs:17)

报错起因

想使用Unity借助NPOI写文档 

Unity 之 实现读取代码写进Word文档功能实现 -- 软著脚本生成工具_unity 读取word-CSDN博客

然后出现了报错显示

 解决方法

找到报错原因

C#使用NPOI进行Excel导入时ICSharpCode.SharpZipLib版本冲突-CSDN博客

解决过程

1.打开vs的nuget程序包,下载一个东西

 

然后继续一些安装流程,安装完成后

2.在解决方案资源管理器中,输入字样进行搜索,并打开对应文件

 

 3.找到这个,并修改以下字样

<bindingRedirect oldVersion="0.0.0.0-0.86.0.518" newVersion="0.86.0.518" />

 4.然后还需要导入一个东西

ICSharpCode.SharpZipLib.dll0.86.0.518和0.84.0.0资源-CSDN文库icon-default.png?t=N7T8https://download.csdn.net/download/u012958722/10381599?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-download-2%7Edefault%7ECTRLIST%7ERate-1-10381599-blog-111513918.235%5Ev38%5Epc_relevant_anti_t3&depth_1-utm_source=distribute.pc_relevant.none-task-download-2%7Edefault%7ECTRLIST%7ERate-1-10381599-blog-111513918.235%5Ev38%5Epc_relevant_anti_t3&utm_relevant_index=2

 下载后,将该文件夹拖入Unity的Plugins文件夹下。

若有冲突报错,删掉之前那个版本的 

 

运行成功

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using NPOI.XWPF.UserModel;
using System.IO;
using System;
public class WordCreat_Script : MonoBehaviour
{
    /// <summary>
    /// 文件路径
    /// </summary>
    private const string filePath = @"C:/Users/Administrator/Desktop";

    /// <summary>
    /// 文件名称
    /// </summary>
    private string fileName = "david.docx";

    private string path;

    /// <summary>
    /// word文档
    /// </summary>
    private XWPFDocument doc = new XWPFDocument();

    private void Start()
    {
        //缝合路径
        path = Path.Combine(filePath, fileName);
        StartCoroutine(a());
    }
    IEnumerator a()
    {
        yield return new WaitForSeconds(1);
        CreateParagraph(ParagraphAlignment.CENTER, 20, "000000", "VR心理辅助治疗系统体验报告");
    }
    /// <summary>
    /// 创建段落
    /// </summary>
    /// <param name="_alignment">对齐方式</param>
    /// <param name="_fontSize">字体大小</param>
    /// <param name="_color">字体颜色(16进制)</param>
    /// <param name="_content">内容</param>
    private void CreateParagraph(ParagraphAlignment _alignment, int _fontSize,
        string _color, string _content)
    {
        XWPFParagraph paragraph = doc.CreateParagraph();
        paragraph.Alignment = _alignment;
        XWPFRun run = paragraph.CreateRun();
        run.FontSize = _fontSize;
        run.SetColor(_color);
        run.FontFamily = "宋体";
        run.SetText(_content);
        FileStream fs = new FileStream(path, FileMode.Create);
        doc.Write(fs);
        fs.Close();
        fs.Dispose();
        Debug.Log("写入成功");
    }

}

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1119240.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C++初阶--类与对象(1)

文章目录 类的引入类的定义访问限定符类成员的注意事项变量名的冲突 类的实例化类成员的声明与定义类的大小this指针特性 总结 类的引入 在c语言中&#xff0c;我们会这样写一个栈&#xff1a; struct Stack {int* a;int top;int capacity; };void StackInit(struct Stack* p…

利用Bootstrap的分页组件实现分页效果

在网页开发过程中&#xff0c;如果碰到内容过多的情况&#xff0c;一般都会使用分页处理。 在<ul>元素上添加pagination类&#xff0c;在<li>元素上添加page-item类&#xff0c;在超链接中添加 page-link类&#xff0c;即可实现一个简单的分页。 目录 00-基础知识…

STM32项目工程的搭建

视频连接&#xff1a; [2-1]--入门 新建工程 及 工程搭建 -------------_哔哩哔哩_bilibili 1.STM32开发方式 1.标志库 表示直接调用已经写好的程序&#xff0c;通过类似于函数调用直接使用即可。 2.HAL库 程序员自己手动的操作寄存器进行编程 2.工程模板 3.搭建工程的步骤 1…

微信小程序OA会议系统数据交互

前言 经过我们所写的上一文章&#xff1a;微信小程序会议OA系统其他页面-CSDN博客 在我们的是基础面板上面&#xff0c;可以看到出来我们的数据是死数据&#xff0c;今天我们就完善我们的是数据 后台 在我们去完成项目之前我们要把我们的项目后台准备好资源我放在我资源中&…

Memcached和Memcache安装(64位win10)

Memcached和Memcache安装&#xff08;64位win10&#xff09; 一、Memcached和Memcache的区别&#xff1a;   网上关于Memcached和Memcache的区别的理解众说纷纭&#xff0c;我个人的理解是&#xff1a;   Memcached是一个内存缓存系统&#xff0c;而Memcache是php的一个扩展…

虚假KeePass网站利用Google Ads和Punycode推送恶意软件

导语 近日&#xff0c;一起利用Google Ads和Punycode进行恶意软件传播的事件引起了广泛关注。该事件利用虚假KeePass下载网站&#xff0c;通过Punycode编码伪装成KeePass密码管理器的官方域名&#xff0c;并在Google Ads广告中推广&#xff0c;诱导用户下载恶意软件。这种新型的…

C++初阶(四)类和对象

文章目录 一、面向过程和面向对象初步认识二、类的引入三、类的定义1、类的概述2、类的两种定义3、成员变量命名规则的建议 四、类的访问限定符及封装1、访问限定符2、封装 五、类的作用域六、类的实例化七、类对象模型1、如何计算类对象的大小2、 类对象的存储方式猜测3、 验证…

【rust/树莓派】使用rppalembedded-graphics控制st7789 LCD屏幕

说在前面 树莓派版本&#xff1a;4bLCD模块&#xff1a;ST7789V2 240*280 LCD树莓派系统&#xff1a;Linux raspberrypi 5.15.76-v8 #1597 SMP aarch64 GNU/Linuxrust版本&#xff1a;rustc 1.73.0 模块详情 某雪的1.69inch LCD模块&#xff0c;包含杜邦线 准备工作 树莓派…

JavaSE编程题目练习(一)

博客昵称&#xff1a;架构师Cool 最喜欢的座右铭&#xff1a;一以贯之的努力&#xff0c;不得懈怠的人生。 作者简介&#xff1a;一名Coder&#xff0c;欢迎关注小弟&#xff01; 博主小留言&#xff1a;哈喽&#xff01;各位CSDN的uu们&#xff0c;我是你的小弟Cool&#xff0…

Rust 中的String与所有权机制

文章目录 一、string二、所有权2.1 所有权与作用域2.2 对所有权的操作2.2.1 转移2.2.3 拷贝2.2.3 传递 2.3 引用2.3.1 借用2.3.2 可变引用 一、string 之前学习过 Rust 只有几种基础的数据类型&#xff0c;但是没有常用的字符串也就是String&#xff0c;今天来学习一下 String…

Opensuse Tumbleweed快速部署K8S-1.28.2

** #查看你的网卡信息 nmcli device show#设置你的静态IP nmcli connection modify ens32 ipv4.method manual \ipv4.addresses 172.16.20.214/24 ipv4.gateway 172.16.20.1 \ipv4.dns 114.114.114.114#重启网卡生效 nmcli c down ens32 && nmcli c up ens32#添加DNS …

Java IDEA java.lang.IllegalStateException: Failed to introspect Class报错原因和解决办法

Java IDEA java.lang.IllegalStateException: Failed to introspect Class报错原因和解决办法 1. 报错如下&#xff1a;2. 解决 在maven右侧查看Dependencies冲突参考 1. 报错如下&#xff1a; 发现是因为 org.redisson:redisson.spring.boot.starter 3.10.6这个包引入不进来导…

如何使用 Canvas和HTML5中的SVG画一个矩形?

使用Canvas和SVG分别绘制矩形的方法如下&#xff1a; Canvas绘制矩形&#xff1a; <canvas id"canvas" width"200" height"200"></canvas><script>const canvas document.getElementById(canvas);const ctx canvas.getCon…

python随手小练6

1、汉诺塔 汉诺塔&#xff1a;汉诺塔&#xff08;又称河内塔&#xff09;问题是源于印度一个古老传说的益智玩具。大梵天创造世界的时候做了三根金刚石柱子&#xff0c;在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放…

燃气管网智能巡检系统

燃气管网维护工作繁杂&#xff0c;涉及人员、资源、巡检等&#xff0c;稍一疏忽就会使我们的工作陷入被动&#xff0c;可见启用燃气管网智能巡检系统是很有必要的。 燃气管网智能巡检系统综合管理智能平台&#xff0c;可对燃气管网数据的统一管理&#xff0c;实现对日常巡查、养…

【Arduino TFT】基于 ESP32S3 S7789 240x240 TFT实现的龙猫太空人天气时钟

忘记过去&#xff0c;超越自己 ❤️ 博客主页 单片机菜鸟哥&#xff0c;一个野生非专业硬件IOT爱好者 ❤️❤️ 本篇创建记录 2023-10-21 ❤️❤️ 本篇更新记录 2023-10-21 ❤️&#x1f389; 欢迎关注 &#x1f50e;点赞 &#x1f44d;收藏 ⭐️留言&#x1f4dd;&#x1f64…

「2021年TYWZ普及模拟题」多边形 待定题解

文章目录 题目描述输入格式输出格式样例样例输入 1样例输出 1样例输入 2样例输出 2 数据范围与提示前置知识思路与部分实现完整代码文章小结 题目描述 一个凸多边形具有非常多优秀的性质&#xff0c;它的任意内角小于或等于 18 0 。 180^。 180。 。 小 F 将 n n n 条边交给…

Linux内存管理(1):memblock

一、memblock分配器初始化 在内核初始化过程中也需要分配内存,使用的页帧分配器叫memblock(早期的内核版本使用BootMem,新版本内核已不再用)。 memblock是系统启动过程中的一个中间阶段的内存管理, 负责在系统上电到内核内存管理模型初始化之前这段时间的物理内存分配、预留…

微信小程序之授权登录以及授权登录流程讲解

前言&#xff1a; 之前博主给大家介绍了小程序的授权登录案例&#xff0c;今天我使用结合项目&#xff0c;后台的方式来给大家展示 一&#xff0c;微信授权登录流程 步骤流程&#xff1a; 1.小程序调用wx.login() 获取 临时登录凭证code &#xff0c;并回传到开发者服务器 2.开…

解决CondaHTTPError HTTP 000 CONNECTION FAILED for url解决方法

解决CondaHTTPError: HTTP 000 CONNECTION FAILED for url解决方法 问题&#xff1a;使用conda install命令安装包提示CondaHTTPError: HTTP 000 CONNECTION FAILED for url 分析&#xff1a;网络连接问题&#xff0c;大概率是网速不行或者源没有换 解决方案&#xff1a;修改国…