Unity或者其他程序启动C#的控制台程序传递参数出错

Unity或者其他程序启动C#的控制台程序传递参数出错

主机启动代码

string exePath = path + ProConst.ProgramPath_GenerateReportExe;//设置exe启动的路径
string data = JsonConvert.SerializeObject(GameManager.Instance._UserTrainingDataEntities);//将对象转成json
Process.Start(exePath, data);//启动程序

从机代码

 static void Main(string[] args){if (args.Length == 0){Console.WriteLine("无任何启动参数");Console.Read();return;}userdata = JsonConvert.DeserializeObject<UserTrainingDataEntities>(data);}

在从机的

userdata = JsonConvert.DeserializeObject<UserTrainingDataEntities>(data);

会报错,理由是Json序列化失败,经过检查发现传递过来的参数的引号全部都没有了

原始数据
{"StudentName":1,"StudentClass":11,"StudentGrades":null}

传到程序中获取的参数就成了

{StudentName:1,StudentClass:11,StudentGrades:null}

解决方式

使用一个字符串替换引号,然后在从机将替换的字符串替换为引号,这个符号是不能在初始的字符串中出现的
修改代码如下,
主机

string exePath = path + ProConst.ProgramPath_GenerateReportExe;//设置exe启动的路径
string data = JsonConvert.SerializeObject(GameManager.Instance._UserTrainingDataEntities);//将对象转成jsondata = data.Replace("\"","~");
Process.Start(exePath, data);//启动程序

从机

 static void Main(string[] args){if (args.Length == 0){Console.WriteLine("无任何启动参数");Console.Read();return;}string data = args[0].Replace("~", "\"");userdata = JsonConvert.DeserializeObject<UserTrainingDataEntities>(data);}

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

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

相关文章

未来已来!AI大模型引领科技革命

未来已来&#xff01;AI大模型正以惊人的速度引领着科技革命。随着科技的发展&#xff0c;人工智能在各个领域展现出了非凡的能力和潜力&#xff0c;大模型更是成为了科技领域的明星。从自然语言处理到图像识别&#xff0c;从智能推荐到语音识别&#xff0c;大模型的应用正在改…

基于ZYNQ PS-SPI的Flash驱动开发

本文使用PS-SPI实现Flash读写&#xff0c;PS-SPI的基础资料参考Xilinx UG1085的文档说明&#xff0c;其基础使用方法是&#xff0c;配置SPI模式&#xff0c;控制TXFIFO/RXFIFO&#xff0c;ZYNQ的IP自动完成发送TXFIFO数据&#xff0c;接收数据到RXFIFO&#xff0c;FIFO深度为12…

word转PDF的方法 简介快速

在现代办公环境中&#xff0c;文档格式转换已成为一项常见且重要的任务。其中&#xff0c;将Word文档转换为PDF格式的需求尤为突出&#xff0c;将Word文档转换为PDF格式具有多方面的优势和应用场景。无论是为了提高文档的可读性和稳定性、保障文档的安全性和保护机制、还是为了…

IDEA运行大项目启动卡顿问题

我打开了很多项目&#xff0c;然后又启动了一个大型项目时&#xff0c;启动到一半&#xff0c;弹出一个窗口&#xff0c;告诉我idea内存不够&#xff0c;怎么解决这个问题&#xff1f; 1、先把多余的项目关掉&#xff0c;再启动这个大项目&#xff0c; 2、如果还是不行就去修改…

一文帮助快速入门Django

文章目录 创建django项目应用app配置pycharm虚拟环境打包依赖 路由传统路由include路由分发namenamespace 视图中间件orm关系对象映射操作表数据库配置model常见字段及参数orm基本操作 cookie和sessiondemo 创建django项目 指定版本安装django&#xff1a;pip install django3.…

Unity使用UnityWebRequest读取音频长度不对的解决方法

在开发的过程中碰到这样一个问题&#xff0c;有的音频文件通过UnityWebRequest读取出来后&#xff0c;AudioClip的Length会不对&#xff0c;比如本身有7秒&#xff0c;读出来只有3秒。代码如下&#xff1a; IEnumerator TestEnumerator() {UnityWebRequest www UnityWebReque…

MySQL查找树形结构中某个节点及其子节点

问题 设计表结构存储树形结构数据时&#xff0c;一般使用 parentId 来记录当前节点的父id。 表结构如下所示&#xff08;以MySQL为例&#xff09; create table test (id varchar(30) collate utf8mb4_general_ci default not nullprimary key,name varch…

gitlab的安装

1、下载rpm 安装包 (1)直接命令下载 wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-11.6.10-ce.0.el7.x86_64.rpm&#xff08;2&#xff09;直接去服务器上下载包 Index of /gitlab-ce/yum/el7/ | 清华大学开源软件镜像站 | Tsinghua Open Source…

Netty (10)-WebSocket

搭建服务基本配置参考第1篇。本篇仅介绍实现WebSocket服务器的关键代码 initChannel public void initChannel(SocketChannel ch) throws Exception {ChannelPipeline pipeline ch.pipeline(); pipeline.addLast(new HttpServerCodec()); pipeline.addLast(new Ht…

【图论】图的遍历 - 构建领接表(无向图)

文章目录 例题&#xff1a;受限条件下可到达节点的数目题目描述代码与注释模板抽象 例题&#xff1a;受限条件下可到达节点的数目 题目链接&#xff1a;2368. 受限条件下可到达节点的数目 题目描述 代码与注释 func reachableNodes(n int, edges [][]int, restricted []int)…

数学建模介绍

一、引言 数学建模&#xff0c;作为一种跨学科的方法论&#xff0c;已经逐渐成为科学研究、工程技术、社会经济管理等领域不可或缺的工具。简而言之&#xff0c;数学建模就是通过建立数学模型来模拟和解决实际问题。在这个过程中&#xff0c;我们需要将实际问题的复杂性和非线…

网络编程:select、poll

.1、select完成TCP并发服务器 程序代码&#xff1a; #include <myhead.h> #define SER_IP "192.168.125.234" //服务端IP #define SER_PORT 8888 //服务端端口号int main(int argc, const char *argv[]) {//1.创建用于连接的套接字int sfds…

1234. 替换子串得到平衡字符串

Problem: 1234. 替换子串得到平衡字符串 文章目录 思路解题方法复杂度Code 思路 这是一个滑动窗口问题。我们需要找到一个最小的子串&#xff0c;使得将其替换后&#xff0c;字符串中四种字符 ‘Q’, ‘W’, ‘E’, ‘R’ 的数量相等。我们可以通过滑动窗口的方式&#xff0c;找…

HTML实体字符列表,必看

HTML、CSS、JS三大部分都起什么作用&#xff1f; HTML内容层&#xff0c;它的作用是表示一个HTML标签在页面里是个什么角色&#xff1b;CSS样式层&#xff0c;它的作用是表示一块内容以什么样的样式&#xff08;字体、大小、颜色、宽高等&#xff09;显示&#xff1b;JS行为层…

基于QGIS的研究区域遥感影像裁切下载方法-以岳麓区为例

目录 前言 一、数据说明 1、遥感影像 2、矢量范围 二、按矢量范围导出 1、第一步、导出影像 2、第二步、设置输出格式 3、设置裁切范围 4、设置分辨率 三、按矢量范围掩膜 1、第一步、打开裁剪工具 2、第二步、参数设置 ​编辑 3、执行掩膜 四、webgis支持 1、生成运行…

计算机基础(面试重点)

文章目录 1. 计算机网络1.1 TCP/IP四层模型与OSI七层模型1.2 HTTP协议原理1.2.1 消息结构1.2.2 HTTP常见请求方法1.2.3 常见状态码 1.3 HTTPS协议原理1.4 TCP与UDP1.4.1 TCP三次握手1.4.2 TCP四次挥手1.4.3 常见热点问题1.4.4 浏览器输入URL并回车的过程以及相关协议&#xff1…

mac上更改vscode快捷键

以移动当前行代码为例 mac上的vscode&#xff0c;默认移动当前行代码的快捷键是⌥↑即option↑按键 现在我想改成command↑ 步骤如下 1.打开vscode-code-首选项-键盘快捷键 2.打开快捷键列表 3.输入move line&#xff0c;找到要改动的这个快捷键 当前行-右键-更改键绑定&…

【Redis】实际应用 - 监控工具

文章目录 1. Redis官方监控系统1.1 RedisInsight 2. 第三方Redis监控工具2.1 redis-stat2.2 KeyDB Web2.3 Netdata 3. 使用监控工具的好处4. 结语 在使用Redis作为数据存储引擎时&#xff0c;对其性能进行实时监控是确保系统稳定性和高性能的重要一环。本篇博客将介绍一些常用的…

pyg-创建消息传递网络

创建消息传递网络 — pytorch_geometric 文档 (pytorch-geometric.readthedocs.io) https://arxiv.org/abs/1801.07829 import torch from torch.nn import Sequential as Seq, Linear, ReLU from torch_geometric.nn import MessagePassing class EdgeConv(MessagePassing): …

数组转成set的底层实现

数组转成set的底层实现 要将Java数组转换为Set集合&#xff0c;可以使用Java集合框架中的HashSet或TreeSet。HashSet是基于哈希表的实现&#xff0c;不保证元素的顺序&#xff0c;而TreeSet是基于红黑树的实现&#xff0c;可以将元素按照一定顺序进行排序。 示例 下面是将Java数…