首页 > 编程语言 >【C#】 .NET Framework 中使用JSON

【C#】 .NET Framework 中使用JSON

时间:2024-10-25 14:51:36浏览次数:1  
标签:Console string C# RH850 System Framework JSON using NET

因为 System.Text.Json 是 .NET Core 和 .NET 5+ 中引入的命名空间。如果你使用的是 .NET Framework,你需要使用 Newtonsoft.Json 库来处理 JSON。

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
using System.IO;

namespace RH850_ChangingPathConsole
{
    class Program
    {
        static void Main(string[] args)
        {
            string inputPath = null;
            string outputPath = null;

            // 检查是否有命令行参数
            if (args.Length == 2)
            {
                inputPath = args[0];
                outputPath = args[1];
            }
            else
            {
                // 如果没有命令行参数,提示用户输入
                Console.WriteLine("Please enter the RH850 Hex input path:");
                inputPath = Console.ReadLine();

                Console.WriteLine("Please enter the RH850 Hex output path:");
                outputPath = Console.ReadLine();
            }

            // 创建一个包含路径信息的对象
            var paths = new
            {
                RH850_InputHexPath = inputPath,
                RH850_OutputHexPath = outputPath
            };

            // 获取当前执行文件的目录
            string currentDirectory = Directory.GetCurrentDirectory();
            string jsonFilePath = Path.Combine(currentDirectory, "RH850_paths.json");

            // 将路径信息序列化为 JSON 字符串
            string jsonString = JsonConvert.SerializeObject(paths, Formatting.Indented);
            Console.WriteLine("JSON 字符串: " + jsonString);

            // 将 JSON 字符串写入文件
            File.WriteAllText(jsonFilePath, jsonString);//File.WriteAllText 方法会覆盖现有的文件内容

            Console.WriteLine("Paths saved to " + jsonFilePath);

            // 从文件中读取 JSON 字符串
            string readJsonString = File.ReadAllText(jsonFilePath);

            // 反序列化 JSON 字符串为对象
            var readPaths = JsonConvert.DeserializeObject<RH850_Paths>(readJsonString);

            // 打印路径信息
            Console.WriteLine("RH850_InputHexPath: " + readPaths.RH850_InputHexPath);
            Console.WriteLine("RH850_OutputHexPath: " + readPaths.RH850_OutputHexPath);
        }

        // 定义一个类来表示路径信息
        public class RH850_Paths
        {
            public string RH850_InputHexPath { get; set; }
            public string RH850_OutputHexPath { get; set; }
        }
    }
}

 

标签:Console,string,C#,RH850,System,Framework,JSON,using,NET
From: https://www.cnblogs.com/ban-boi-making-dinner/p/18489296

相关文章

  • CRC16
    CRC16算法循环冗余算法/***循环冗余校验算法**代码中的常量,仅用于提示相关算法,无实际功能**@authorMr.css*@version2024-10-2210:49*/publicclassCRC16Utils{/***名称:CRC4多项式:x4+x+1简记式:3*/publicstaticfinalintC......
  • Apache Seata(incubating) 首个版本重磅发布!
    作者:Seata社区2.1.0是Seata进入Apache基金会的第一个ReleaseVersion。此次发布将io.seata包名更改为org.apache.seata。除了按原有的Roadmap技术演进外,2.1.0进行了大量兼容性工作,实现了API、数据和协议的兼容。用户无需修改原有的API和配置,即可实现到Apache版......
  • switch 函数
    #include<stdio.h>intnum(intx){switch(x){case1:printf("Monday");break;case2:printf("Tuesday");break;case3:printf("Wednesday");break;case4:......
  • 数字IC后端实现 | Innovus各个阶段常用命令汇总
    应各位读者要求,小编最近按照Innovus流程顺序整理出数字IC后端项目中常用的命令汇总。限于篇幅,这次只更新到powerplan阶段。有了这份Innovus常用命令汇总,学习数字IC后端从此不再迷路!如果大家觉得这个专题还不错,想继续看数字IC后端实现powerplan之后的内容,欢迎在文末留言区留......
  • C/S结构用户界面设计
    【实验编号】10003809547j 图形用户界面设计【实验学时】8学时【实验环境】l 所需硬件环境为微机;l 所需软件环境为MicrosoftVisualStudio2013【实验内容】编写一整套Mis系统UI界面,Mis系统名称自拟,尽量运用到如下控件:l 窗体l 菜单l 工具栏l 状态栏控件l......
  • JavaSE-继承(包含Object类)
    目录继承(包含Object类)何为继承优点代码复用易于维护和扩展缺点紧密耦合缺乏灵活性常用的方法Object类Object类中的常用方法:方法重写规则方法重写规则方法重写与方法重载的区别示例代码super关键字的用法示例代码final关键字的用法示例代码继承(包含Object类)何为继承在面向对象编......
  • Django之CURD
    创建[app名称]模块pythonmanage.pystartapp[app名称]添加到项目settings.py的INSTALL_APPS中#mysite/settings.pyINSTALLED_APPS=['django.contrib.admin','django.contrib.auth','django.contrib.contenttypes','dj......
  • 位运算挑战:通过最少位翻转实现 a OR b == c【逐位处理与右移操作】
    引言在这篇文章中,我们将详细探讨一个常见的位操作问题:给定三个正整数a、b和c,通过最少的位翻转次数使得aORb==c。位操作在计算机科学中十分重要,特别是在涉及高效算法设计、底层优化和嵌入式系统编程时。本篇文章将通过逐步分析这个问题,详细讲解如何利用位运算规则......
  • 革新财务报表安全:云盒子Excel报表防泄密解决方案
    一直以来,财务和审计事务都面临着严峻的信息安全挑战。Excel,作为处理财务数据的主要工具,承载着海量的敏感信息。一张Excel报表可能关联多个子表,每个数据点都关乎财务隐私。在多组织、多人员参与的报表共享管理中,如何有效防止信息泄露,同时不改变财务人员的工作习惯,成为了一个亟待......
  • 数据结构 ——— C语言实现链式队列
    目录队列的概念以及示意图数组队列和链式队列链式队列的结构 实现链式队列的准备工作实现链式队列1.初始化2.打印队列的所有数据3.数据入队列(尾插)4.数据出队列(头删)5.访问队头的数据6.访问队尾的数据7.队列数据总个数8.判断队列是否为空9.释放队列的所......