C#中的序列化和反序列化 每当与对象有关的数据必须从一个应用程序发送到另一个应用程序时,就会使用序列化和反序列化的概念。序列化用于将应用程序数据导出到文件中。然后目标应用程序使用反序列化从应用程序中提取数据以供进一步使用。 序列化是一个概念,其中 C# 类对象被写入或序列化到文件中。假设您有一个名为 Tutorial 的 C# 类。该类有ID和Tutorials名称2个属性。 序列化可用于将 Tutorial 类的数据属性直接写入文件。反序列化用于从文件中读取数据,重新构造Tutorial对象。 如何在 C# 中序列化对象 让我们看一个如何实现这一目标的示例。 在我们的示例中,我们将
在 C# 文件操作中,通常使用流来读取和写入文件。流是在应用程序和文件之间创建的附加层。流用于保证对文件进行流畅的读写操作。 从大文件中读取数据时通常使用流。通过使用流,来自大文件的数据被分解成小块并发送到流中。然后可以从应用程序中读取这些数据块。 将其分解为小块的原因是因为一次性读取大文件会影响性能。如果您要一次性读取 100 MB 文件中的数据,您的应用程序可能会挂起并变得不稳定。最好的方法是使用流将文件分解为可管理的块。 因此,当对文件执行写入操作时,要写入的数据首先写入流中。然后从流中将数据写入文件。读操作也是如此。在读操作中,数据首先从文件传输到流中。然后通过流从应用程序中读取
C# 有大量的文件操作。这些操作包括打开文件、读取或写入文件。在某些情况下,您希望直接处理文件,在这种情况下,您将使用 C# 中可用的文件操作。下面会提到一些基本的文件操作。 读取 - 此操作是从文件中读取数据的基本读取操作。 写入 - 此操作是将数据写入文件的基本写入操作。默认情况下,会从文件中删除所有现有内容,并写入新内容。 追加 - 此操作还涉及将信息写入文件。唯一的区别是文件中的现有数据不会被覆盖。要写入的新数据添加在文件末尾。 在本教程中,您将学习- 文件存在 文件.ReadAlllines 文件.ReadAllText 文件. 复制 文件. 删除 基本
从数据库访问数据是任何编程语言的重要方面之一。任何编程语言都必须具备使用数据库的能力。 C# 也不例外。 它可以与不同类型的数据库一起使用。它可以与Oracle和Microsoft SQL Server等最常见的数据库一起使用。 它还可以与MongoDB和MySQL等新形式的数据库一起使用。 在这个 C# sql 连接教程中,你将学习到- 数据库连接基础知识 如何将 C# 连接到数据库 使用 SqlDataReader 访问数据 C# 插入数据库 更新记录 删除记录 将控件连接到数据 C# 数据网格视图 数据库连接基础知识 C# 和 .Net 可以与大多数数据库一起使用,最常见
到目前为止,我们已经了解了如何使用 C# 创建基于控制台的应用程序。但在实际场景中,团队通常使用 Visual Studio 和 C# 来创建 Windows 窗体或基于 Web 的应用程序。 Windows 窗体应用程序是一种旨在在计算机上运行的应用程序。它不会在网络浏览器上运行,因为它会变成一个网络应用程序。 本教程将重点介绍如何创建基于 Windows 的应用程序。我们还将学习一些有关如何使用 C# Windows 应用程序的各种元素的基础知识。 在本 Windows 教程中,您将学习- Windows 窗体基础知识 Windows 窗体中的 Hello World 向表单添加
什么是 C# 中的 Hashtable? 哈希表是一个特殊的集合,用于存储键值项。因此,哈希表不会像堆栈、数组列表和队列那样只存储一个值,而是存储两个值。这两个值构成了哈希表的一个元素。 下面是一些哈希表值的示例。 { 001 , .Net }{ 002 , .C# }{ 003 , ASP.Net } 上面我们有 3 个键值对。每个元素的键分别是 001、002 和 003。每个键值对的值分别为“.Net”、“C#”和“ASP.Net”。 让我们更详细地看一下 Hashtable 集合可用的操作。 哈希表的声明 Hashtable 的声明如下所示。 Hashtable 是在 Has
什么是 C# 中的队列? 队列是一个特例集合,它代表了先进先出的概念。想象一下排队等候公共汽车的人。通常,第一个进入队列的人将是第一个进入公共汽车的人。同样,最后一个进入队列的人将是最后一个进入公共汽车的人。元素被添加到队列中,一个在彼此的顶部。 将元素添加到队列中的过程是入队操作。要从队列中删除元素,可以使用 dequeuer 操作。 Queues C#中的操作和我们之前看到的stack类似。 让我们更详细地了解如何在 C# 中使用 Queue 以及 C# 中 Queue 集合可用的操作。 队列声明 下面提供了 Queue 的声明。队列是在队列数据类型的帮助下创建的。 “new”关键
什么是 C# 中的堆栈? 堆栈是一个特例集合,它代表了后进先出 (LIFO) 的概念。为了首先了解 LIFO,让我们举个例子。想象一摞书,每本书都叠放在一起。 在书籍的情况下,后进先出的概念意味着只有最上面的书才能从书堆中取出。不能从中间移除一本书,因为那样会干扰堆栈的设置。 因此,在 C# 中,堆栈也以相同的方式工作。元素被添加到堆栈中,一个在彼此的顶部。将元素添加到堆栈的过程称为推送操作。要从堆栈中删除元素,您还可以删除堆栈的最顶部元素。此操作称为 pop。 让我们更详细地看一下 Stack 集合可用的操作。 堆栈声明 堆栈是在堆栈数据类型的帮助下创建的。关键字“new”用于创建
什么是 C# 中的 ArrayList? ArrayList 集合类似于 C# 中的 Arrays 数据类型。最大的不同是数组列表集合的动态特性。 对于数组,需要在声明数组时定义数组可以容纳的元素个数。但在 Array List 集合的情况下,这不需要事先完成。可以在任何时间点从 Array List 集合中添加或删除元素。让我们更详细地看一下数组列表集合可用的操作。 数组列表的声明 下面提供了 ArrayList 的声明。数组列表是在 ArrayList 数据类型的帮助下创建的。 “new”关键字用于创建 ArrayList 的对象。然后将该对象分配给变量 a1。所以现在变量 a1 将
在我们之前的教程中,我们了解了如何在 C# 中使用数组。让我们快速概述一下,编程中的数组用于对一组相关对象进行分组。因此可以创建一个数组或一组整数,可以通过一个变量名访问。 什么是 C# 中的集合? 集合类似于数组,它提供了一种更灵活的方式来处理一组对象。 在数组中,您会注意到您需要事先定义数组中元素的数量。这必须在声明数组时完成。 但是在一个集合中,你不需要预先定义集合的大小。您可以随时从集合中添加元素甚至删除元素。本章将重点介绍如何使用 C# 中可用的不同集合。 System.Collections 类 收藏 说明 ArrayList ArrayList 集合类似于 C# 中的 Ar
什么是 C# 中的接口? 一个接口 在 C# 中,与类一起使用来定义合同,该合同是关于类将向应用程序提供什么的协议。接口定义了一个类可以执行的操作。接口声明属性和方法。由类来准确定义该方法的作用。 让我们通过更改控制台应用程序中的类来查看一个接口示例。请注意,我们不会运行代码,因为没有任何东西可以使用接口运行。 C# 接口示例 让我们创建一个接口类。该课程将被称为“Guru99Interface”。然后我们的主类将扩展定义的接口。所有代码都需要写在Program.cs文件中。 using System; using System.Collections.Generic; using Sy
什么是 C# 中的抽象类? 抽象类 永远不能被实例化并且由关键字abstract标记。抽象类中包含零个或多个抽象方法。抽象类充当基类,旨在被实现或覆盖其方法的子类继承。 让我们通过下面给出的示例来学习 C# 中的抽象类。下面是一个名为“Animal”的类的定义。定义“Animal”类时,对动物一无所知,无论是狗还是猫。称为description的方法只是为该类定义的泛型方法。 现在,当知道 Animal 到底是什么时,我们创建另一个继承基类的类。如果我们知道动物实际上是狗,我们创建继承主基类的 Dog 类。这里的关键区别在于 Dog 类不能更改 Animal 类的 Descrip
什么是 C# 中的继承? 继承 是C#的一个重要概念。继承是一个定义父类和子类的概念。子类继承父类的方法和属性,但同时也可以根据需要修改方法的行为。如果需要,子类也可以定义自己的方法。 在本 C# 教程中,您将学习- 什么是 C# 中的继承? C# 继承示例 什么是 C# 中的多态性? C# 多态示例 让我们通过一个程序示例来更好地理解 C# 的继承: C# 继承示例 现在让我们看看如何在代码中加入继承的概念。 步骤 1) 第一步是更改我们的教程类的代码。在这一步中,我们将以下代码添加到 Tutorial.cs 文件中。 请注意,我们现在需要在 TutorialID 和
什么是 C# 中的访问修饰符(说明符)? 访问修饰符 或 C# 中的访问说明符是用于定义类属性或方法的可见性的关键字。当您不希望其他程序看到类的属性或方法时使用它。访问修饰符限制访问,使其他程序无法看到某个类的属性或方法。 C#中有6种访问修饰符: 私人 公开 受保护 内部 受保护的内部 私人保护 在本教程中,您将学习- 什么是 C# 中的访问修饰符(说明符)? C# 中的私有访问修饰符 C# 公共访问修饰符 C# 中受保护的访问修饰符 C# 内部访问修饰符 C# 构造函数 我们将通过下面的程序示例了解 C# 中的主要访问修饰符。 C# 中的私有访问修饰符 当 Private
C# 基于 C++ 编程语言。因此,C# 编程语言具有对类和对象的内置支持。类不过是用于表示实时实体的属性和方法的封装。 例如,如果您想在特定应用程序中处理员工数据。 员工的属性将是员工的 ID 和姓名。方法包括员工数据的录入和修改。 所有这些操作都可以在 C# 中表示为一个类。在本章中,我们将更详细地了解如何在 C# 中使用类和对象。 在本教程中,您将学习- 什么是类和对象? 如何创建类和对象 字段和方法 什么是类和对象? 让我们先从类开始。 正如我们之前讨论的,类是数据属性的封装 和数据方法 . 属性用于描述类将持有的数据。 这些方法告诉我们可以对数据执行哪些操作。
什么是 C# 中的数组? 数组用于存储一个集合或一系列元素。这些元素将属于同一类型。 例如,如果您有一个整数值数组,则该数组可以是值的集合,例如 [1, 2, 3, 4]。这里数组的元素个数是4。 当您想要存储相同类型的值的集合时,数组很有用。所以不用为每个元素声明一个变量,你可以只声明一个变量。 这个变量将指向一个数组或元素列表,它将负责存储数组的元素。 让我们看看如何在 C# 中使用数组。在我们的示例中,我们将声明一个整数数组并相应地使用它们。 请注意,以下所有代码都是在 Program.cs 文件中编写的。 步骤 1) 声明一个数组——第一步是声明一个数组。让我们看看我们如
流控制和条件语句 任何编程语言都可以使用流控制和条件语句来改变程序的流程。 例如,如果有人想根据某种特定的逻辑只执行一组特定的语句,那么流控制和条件语句将很有用。 当我们浏览 C# 中可用的各种语句时,您将获得更好的理解。 请注意,以下所有代码都是在 Program.cs 文件中编写的。 在本教程中,您将学习 - 如果语句 切换语句 当循环时 for循环 1) 如果语句 if 语句用于在执行一组语句之前评估布尔表达式。如果一个表达式的计算结果为真,那么它将运行一组语句,否则它将运行另一组语句。 在下面的示例中,对名为 value 的变量进行了比较。如果变量的值小于 10,则
C# 变量 变量是赋予存储区域的名称,用于存储各种数据类型的值。 C#中的每个变量都需要有一个特定的类型,这决定了变量内存的大小和布局。 例如,变量可以是字符串类型,这意味着它将用于存储字符串值。根据数据类型,可以对变量进行具体的操作。 例如,如果我们有一个 Integer 变量,那么可以对变量进行加减法等操作。在一个程序中可以声明多个变量。 让我们看一个声明不同数据类型的多个变量的简单示例。 在我们的示例中,我们将定义两个变量,一个是“字符串”类型,另一个是“整数”类型。然后我们将这些变量的值显示到控制台。对于每个示例,我们将仅修改 Program.cs 文件中的 main 函数。
C# 枚举 在任何编程语言中都使用枚举来定义一组常量值。例如,可以将星期几定义为枚举并在程序中的任何位置使用。在 C# 中,枚举是在关键字“enum”的帮助下定义的。 让我们看一个如何使用“枚举”关键字的示例。 在我们的示例中,我们将定义一个名为 days 的枚举,用于存储星期几。对于每个示例,我们将仅修改 Program.cs 文件中的 main 函数。 using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threa
什么是 C# 中的数据类型? C# 语言带有一组基本数据类型。这些数据类型用于构建在应用程序中使用的值。让我们探索 C# 中可用的基本数据类型。对于每个示例,我们将仅修改 Program.cs 文件中的 main 函数。 1) 整数 Integer 数据类型用于处理数字。在这种情况下,数字是整数,例如 10、20 或 30。在 C# 中,数据类型由 Int32 关键字表示 .下面是如何使用此数据类型的示例。在我们的示例中,我们将定义一个名为 num 的 Int32 变量。然后我们会给变量赋值一个整数值,然后相应地显示它。 using System; using System.Col
C语言