ExcelReaderFactory读取Excel文件失败

原因:Window切换English系统语言untiy发布项目运行出现

UriFormatException: Invalid URI: The hostname could not be parsed.

无法读取记录IP 与Port 的excel文件
经过排查发现项目版本读取Excel的方法是通过

ExcelReaderFactory.CreateOpenXmlReader()

  • 读取流的方式,而此方式引用的是I18N、I18N.CJK
  • 发布设置中的api兼容等级为: BuildSetting PlayerSetting 中的API兼容等级设置
  • 该库的属性为:
    I18N库属性
    如何找到与发布设置对应的Api兼容版本

…\Unity\Editor\Data\MonoBleedingEdge\lib\mono\unityjit
jit(Just-In-Time)下都为运行时编译库

通过该路径下的找到对应的I18N系列库覆盖项目中的文件,发布即可

  • 备注:虽然解决了问题,但还有几个疑问没有验证,记录一下
    1. 没有切换系统语言时,使用3.5版本的同样可以正常读取运行,不清楚切换系统语言导致了什么,可能一些格式与路径需要适配
    2. ExcelReaderFactory引用应该是通过Visual Studio中NuGet Package Manager下载ExcelDataReader.dll和ExcelDataReader.DataSet.dll的方式读取Excel 详情见Unity使用ExcelDataReader读取Excel,但使用I18N系列的库也可使用
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值