在Unity中使用C#进行Xml序列化时保留特定小数位的方法参考

序列化方法代码参考:

using System.IO;
using System.Xml.Serialization;public class XmlTool
{public static string ToXml<T>(T obj){XmlSerializer xmlSerializer = new XmlSerializer(typeof(T));using var stringWriter = new StringWriter();//让xml文档的命名空间为空,文档显得简洁那么一点点。XmlSerializerNamespaces xmlns = new XmlSerializerNamespaces();xmlns.Add("","");//xmlSerializer.Serialize(stringWriter, obj, xmlns);return stringWriter.ToString();}public static T FromXml<T>(string xml){XmlSerializer xmlSerializer = new(typeof(T));return (T)xmlSerializer.Deserialize(new StringReader(xml));}
}

小数位数控制参考:

public struct SceneAreaInfo
{[XmlAttribute("X")]public string strX{get { return x.ToString("0.##"); }set { x = float.Parse(value); }}[XmlIgnore]public float x;//场景区域最左侧坐标[XmlAttribute("Y")]public string strY{get { return y.ToString("0.##"); }set { y = float.Parse(value); }}[XmlIgnore]public float y;//场景区域最下面坐标[XmlAttribute("Width")]public string strWidth{get { return width.ToString("0.##"); }set { width = float.Parse(value); }}[XmlIgnore]public float width;//场景区域宽度[XmlAttribute("Height")]public string strHeight{get { return height.ToString("0.##"); }set { height = float.Parse(value); }}[XmlIgnore]public float height;//场景区域高度[XmlIgnore]public Vector2 size => new Vector2(width, height);public SceneAreaInfo(float x, float y, float width, float height){this.x = x;this.y = y;this.width = width;this.height = height;}public SceneAreaInfo(Rect rect){x = rect.x;y = rect.y;width = rect.width;height = rect.height;}
}

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

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

相关文章

linux驱动 -- 输入子系统

1:输入子系统介绍 一个统一的输入设备的开发框架&#xff0c; 统一生成设备文件&#xff0c; 统一返回固定格式值。 2:输入子系统开发设备 键盘、鼠标、触摸屏等等。 3&#xff1a;输入子系统运行框架 应用层&#xff1a;操作设备文件openclosereadwrite 输入子系统&#xff…

Netty 学习笔记

Java 网络编程 早期的 Java API 只支持由本地系统套接字库提供的所谓的阻塞函数&#xff0c;下面的代码展示了一个使用传统 Java API 的服务器代码的普通示例 // 创建一个 ServerSocket 用以监听指定端口上的连接请求 ServerSocket serverSocket new ServerSocket(5000); //…

OS常规测试方法-PPMU

step 0: 检查工作&#xff1a; 检查每根pin连接到指定的PPMU资源是否正确继电器资源在PRJ文件中是否定义正确 step 1 设计者设计的测试电路继电器重置初始化close应该闭合的继电器 step 2 DPS pin电压置0V&#xff0c;同时考虑电流量程wait闭合测试机DPS通道RELAYwait st…

android13 隐藏状态栏里面的飞行模式 隐藏蓝牙 隐藏网络

总纲 android13 rom 开发总纲说明 目录 1.前言 2.问题分析 3.代码分析 4.代码修改 5.编译运行 6.彩蛋 1.前言 android13 隐藏状态栏里面的飞行模式,或者其他功能,如网络,蓝牙等等功能,隐藏下图中的一些图标。 2.问题分析 这里如果直接找这个布局的话,需要跟的逻…

nefu暑假acm集训1 构造矩阵 个人模板+例题汇总

前言&#xff1a; 以下都是nefu暑假集训的训练题&#xff0c;我在此把我的模板和写的一些练习题汇总一下并分享出来&#xff0c;希望在能满足我复习的情况下能帮助到你。 正文&#xff1a; 模板&#xff1a; #include<bits/stdc.h> using namespace std; typedef long…

算法训练营|图论第5天

题目&#xff1a;107.寻找存在的路径 题目链接&#xff1a; 107. 寻找存在的路径 (kamacoder.com) 代码&#xff1a; #include<bits/stdc.h> #include<unordered_map> #include<unordered_set> using namespace std; vector<int>father; int find(…

Celery 中,广播模式可以通过使用 RabbitMQ 的 fanout 交换机来实现

这里写自定义目录标题 设置 Django 的 settings 模块从 Django 的 settings 文件中加载 Celery 配置自动发现任务使 Celery 实例可用配置 Celery 的任务路由 在 Celery 中&#xff0c;广播模式可以通过使用 RabbitMQ 的 fanout 交换机来实现。fanout 交换机会将消息广播到所有绑…

嵌入式开发者必备资料库 【完全免费】

嵌入式资料网盘分享文案 &#x1f31f; 嵌入式开发者必备资料库 &#x1f31f; 亲爱的嵌入式开发爱好者们&#xff0c; 我们为大家准备了一份丰富的嵌入式资料网盘&#xff0c;涵盖了单片机、Linux系统、硬件设计等多个领域的优质资源&#xff0c;助力你的学习和项目开发&…

国外课程环境总结

CS106L2023 and CS106B 环境配置(详细教程)_cs106b 2023-CSDN博客

Java:内存过高和CPU过高的排查流程

一、CPU占用过高排查流程 1、利用 top 命令可以查出占 CPU 最高的的进程pid 。 假设pid为 98762、查看该进程下占用最高的线程id。 top -Hp 98763、假设占用率最高的线程 ID 为 6900&#xff0c;将其转换为 16 进制形式 (因为 java native 线程以16进制形式输出) 。 printf…

WHAT - 通过 react-use 源码学习 React(State 篇)

目录 一、官方介绍1. Sensors2. UI3. Animations4. Side-Effects5. Lifecycles6. State7. Miscellaneous 二、源码学习示例&#xff1a;n. xx - yyState - createMemoState - createReducer 一、官方介绍 Github 地址 react-use 是一个流行的 React 自定义 Hook 库&#xff0…

Qt 学习第7天:Qt核心特性

元对象系统Meta-object system 来自AI生成&#xff1a; Qt中的元对象系统&#xff08;Meta-Object System&#xff09;是Qt框架的一个核心特性&#xff0c;它为Qt提供了一种在运行时处理对象和类型信息的能力。元对象系统主要基于以下几个关键概念&#xff1a; 1. QObject&a…

Linux实现异步IO的方法:epoll,posix aio,libaio,io_uring

Linux中异步IO的实现方式大概有以下几种&#xff1a; 1. epoll 熟悉网络编程的人可能会想到select&#xff0c;poll&#xff0c;epoll这些异步IO的方式&#xff0c;但实际上这些方式叫做非阻塞IO&#xff0c;并不是实际意义上的异步IO。因此这些只能用于异步的Socket IO&…

有了豆包Marscode你还害怕不会写代码吗?

前言 随着科技的飞速发展&#xff0c;软件开发者们正面临着前所未有的挑战。编程任务变得越来越复杂&#xff0c;他们不仅需要编写和维护大量的代码&#xff0c;还要在严格保证代码质量的同时&#xff0c;提高开发效率。在这种背景下&#xff0c;一款高效且实用的辅助编码工具…

Depth anything v2环境相关问题

环境配置&#xff1a;numpy版本 2.x的版本不兼容。 因为我的torch版本较高&#xff0c;所以numpy改成一个较高的版本&#xff1a;1.26.4。可用 warning&#xff1a;xFormers not available xFormers: 一个用于推理加速的库&#xff0c;尤其是当输入尺寸增大时&#xff0c;能…

FastJson序列化驼峰-下划线转换问题踩坑记录

背景 问题描述 在MySQL数据表中&#xff0c;存在一个JSON结构的扩展字段&#xff0c;通过updateById进行更新写入操作。更新写入的同一个字段名出现了混合使用了驼峰命名和下划线命名两种格式。 ps: FastJson版本是1.2.83 问题影响 数仓同学离线统计数据时发现字段名有两种…

单链表——环形链表II

方法一 难想&#xff0c;但代码容易实现 根据第一道环形链表的题目我们可以得知快慢指针相交的节点&#xff0c;但是如果想要知道进入环形链表的第一个节点&#xff0c;我们就还需要定义一个指针从链表的头节点开始&#xff0c;与相交的节点同时行走&#xff0c;当两个节点重…

LeetCode刷题:3.无重复字符的最长子串

问题&#xff1a;首先分析问题得出需求 1.要求得到一个唯一最长子串的序列的长度。 子串&#xff1a;依据其形式是拥有一段长度的&#xff0c;所以考虑滑动窗口 唯一&#xff1a;考虑使用HashSet 需求描述&#xff1a;要求得到滑动窗口的大小&#xff0c;也就是左右指针的距离&…

milvus多个Querynode,资源消耗都打在一个节点上

milvus 查询时的原理 当读取数据时&#xff0c;MsgStream对象在以下场景中创建&#xff1a; 在 Milvus 中&#xff0c;数据必须先加载后才能读取。当代理收到数据加载请求时&#xff0c;会将请求发送给查询协调器&#xff0c;查询协调器决定如何将分片分配到不同的查询节点。…