9.1.2 System.IO 命名空间中的类[共2页]
ASP.NET网络程序设计课后习题及答案
![ASP.NET网络程序设计课后习题及答案](https://img.taocdn.com/s3/m/9d2c7bbfd0f34693daef5ef7ba0d4a7302766c89.png)
第一章课后习题一、填空题(20空,每空2分,共40分)1.使用(分级)配置系统,使服务器环境和应用程序的设置更加简单。
2.有两种常用的脚本语言(VB Script)和(Java Script)。
3.计算机中安装(.NET Framework)以后,系统就可以运行任何.NET语言编写的软件。
4..NET Framework由两部分组成:(框架类库)和(公共语言运行库)。
5.CLR是指(公共语言运行库),其功能是负责(运行和维护程序员编写的程序代码)。
6..NET Framework公共语言运行库最重要的功能是为提供(执行环境)。
7.框架中的类分别放在了不同的(命名空间)中。
8.所有与操作文件系统有关的类都位于(System.IO)命名空间中。
9.IIS是指(与相配套的服务器平台)。
10.命名空间(System.T ext)包含用于文本处理的类,实现了不同编码方式操作文本。
11.所有SQL Server数据库应用的类都位于(System.Data.SqlClient)命名空间。
12.运行环境必须安装.NET程序赖以执行的(.NET Framework)。
13.默认的资源文件扩展名是(aspx)。
14.FCL是指(公共代码),其功能是(重复多次使用框架类库中的类)。
15.与相配套的服务器平台是(微软的IIS)。
16.目前最专业的.NET开发工具是(Visual Studio 2010)。
二、选择题(10小题,每小题2分,共20分)1.广泛用于网站编程的语言是3P,以下( C )不是3P语言之一。
A.ASP B.PHP C.PB D.JSP2.采用C#、V isual Basic语言作为脚本,执行时一次编译,可以( B )执行。
A.一次B.多次C.两次D.三次3.( B )是.NET的标准语言。
A.C++ B.C# C.Visual Basic D.Java4.默认的页面文件扩展名是( D )。
A.asp B.aspnet C.net D.aspx5.Windows 2003内置了.Net Framework的版本是(A)。
C#命名空间(namespace)不可不知的那些事
![C#命名空间(namespace)不可不知的那些事](https://img.taocdn.com/s3/m/907e53b0294ac850ad02de80d4d8d15abe23009b.png)
C#命名空间(namespace)不可不知的那些事 命名空间本质上就是⼀个逻辑分组,就和我们⽂件夹分组是⼀致的,允许我们将相关的类型集合在⼀起。
命名空间是⼀个⽐较通⽤的概念,在很多语⾔⾥⾯都存在,只不过可能存在⼀些细微差别以及使⽤不同的名称。
⽐如Java就叫包(package)。
接下来,我们将从以下五个⽅⾯来讲解命名空间: 定义命名空间使⽤命名空间正确理解命名空间含义使⽤命名空间alias解决简单类名冲突使⽤extern alias解决Assembly中的完整类名冲突定义命名空间 命名空间的定义很简单,是以关键字namespace(命名空间的英⽂名)开始,后跟命名空间的名字和⼀对⼤括号。
⼤括号⾥的内容都属于这个命名空间。
格式如下: namespace namespace_name { } namespace_name是以点号(.)作为层级隔离的。
⽐如System.IO就可以认为System是第⼀层命名空间,IO是第⼆层命名空间。
由于命名空间其实就是⼀个逻辑分组,所以namespace这个关键字,我们可以理解为“如果不存在namespace_name这个命名空间,就创建⼀个。
如果存在,就使⽤这个命名空间”。
因此,我们是可以在多个地⽅定义同⼀个命名空间的,只要保证同⼀个命名空间中的内容不冲突即可,如下: namespace System.IO { class MemoryStream {} } namespace System.IO { class BufferedStream {} }使⽤命名空间 在程序中使⽤特定类型的时候,我们需要使⽤完整的限定名,⽐如System.IO.MemoryStream。
但是如果每次都这么写,除了增加了开发⼈员打字的成本,毫⽆益处。
因此我们可以使⽤using关键字来表明我们需要使⽤某个命名空间中的类型。
如下: //使⽤完整限定名 public static void Main() { System.Text.StringBuilder sb=new System.Text.StringBuilder(); } //使⽤using 关键字 using System.Text; public static void Main() { StringBuilder sb=new StringBuilder(); } using关键字,其实是告诉编译器可以尝试在这个特定的命名空间中查找类型。
System类中的方法
![System类中的方法](https://img.taocdn.com/s3/m/7b6eb17382c4bb4cf7ec4afe04a1b0717ed5b350.png)
System类中的方法1. currentTimeMillis(:返回当前的系统时间,以毫秒为单位。
2. arraycopy(Object src, int srcPos, Object dest, int destPos, int length):将数组中指定的数据复制到另一个数组中,可以实现数组的复制、扩容和合并等操作。
3. exit(int status):终止当前正在运行的Java虚拟机,非零参数表示异常终止。
4. gc(:运行垃圾回收器,建议但不能保证立即回收。
5. getProperty(String key):获取系统属性,如系统的操作系统名称、Java运行时环境版本和用户的主目录等。
6. getProperties(:获取系统的所有属性。
7. getenv(String name):获取指定环境变量的值。
8. getSecurityManager(:返回当前已经设置的安全管理器。
9. getSecurityManager(:设置安全管理器。
10. identityHashCode(Object x):返回指定对象的哈希码。
与hashCode方法不同的是,identityHashCode方法返回的是对象地址的哈希码。
11. runFinalization(:运行已经被标记为finalizer的对象的finalize(方法。
12. setErr(PrintStream err):重新分配"标准"错误输出流。
13. setIn(InputStream in):重新分配"标准"输入流。
14. setOut(PrintStream out):重新分配"标准"输出流。
15. load(String filename):从具有指定名称的文件中加载动态库。
16. mapLibraryName(String libname):给定库的基本名称,返回一个完整库名称(带有具体的库扩展名)。
using的使用 -回复
![using的使用 -回复](https://img.taocdn.com/s3/m/12e96e995122aaea998fcc22bcd126fff7055dcf.png)
using的使用-回复「using的使用」,这个话题涉及到一系列的使用场景和技巧,接下来我将逐步回答并展开这个话题。
首先,我们需要明确using的含义和用途。
Using是一个英语单词,它可以作为动词或介词使用。
作为动词时,它的意思是使用、运用的意思;而作为介词时,它表示借助、利用的意思。
在编程中,using还有特殊的用法,用来引入命名空间。
ing作为动词的用法:使用(using)是我们日常生活中的一部分,我们使用各种各样的物品、工具和技术来完成各种任务。
无论是家庭生活还是工作,使用的技巧和方法都是非常重要的。
举个例子,使用手机是我们日常生活中最常见的事情之一。
我们使用手机来打电话、发信息、上网等。
使用手机的技巧包括熟悉各种功能、快速操作等。
另外,我们还可以使用手机上的各种应用程序来完成不同的任务,如社交媒体、支付、地图导航等。
在工作中,使用技巧也是非常重要的。
比如,在办公室使用电脑和软件来完成各种任务,需要熟悉各种软件的功能和快捷键,以提高工作效率。
另外,许多工作还需要使用各种各样的工具和设备,例如使用文件夹、印刷机、扫描仪等。
总的来说,使用技巧是我们日常生活和工作中非常重要的一部分,它们可以帮助我们更好地完成任务,提高效率。
ing作为介词的用法:Using作为介词时,表示借助、利用的意思。
我们可以利用各种资源、工具、技术等,来完成各种任务。
在日常生活中,我们可以利用各种资源和工具来解决问题。
比如,我们可以利用图书馆的图书和电脑来学习知识;我们可以利用社交媒体来与他人沟通和交流;我们也可以利用公共交通工具来出行等。
在工作中,我们通常也需要利用各种资源和工具来完成各种任务。
比如,在设计一个产品时,我们可以利用电脑上的设计软件和模型来创建和验证设计方案;在开展市场调研时,我们可以利用问卷调查和统计软件来收集和分析数据等。
总的来说,使用(using)资源、工具和技术来完成各种任务是我们日常生活和工作中常见的做法,它能够帮助我们更好地解决问题,实现目标。
第9章C#使用ADO进行数据库编程
![第9章C#使用ADO进行数据库编程](https://img.taocdn.com/s3/m/644df5fff61fb7360b4c6590.png)
9.2 窗体设计部分
任务9.1 任务实施
(四)“搜索电影”窗体模块 • (3) 添加控件
9.2 窗体设计部分
任务9.1 任务实施
(五)“评价电影”窗体模块 • (1) ―评价电影”模块概述
– “评价电影”窗体,能够根据用户在“导航”窗体“评电 影”一栏的文本框中输入的关键字,在数据库的“电影介 绍表”中搜索,找到与关键字匹配的电影,如果存在,就 把与该电影相关的所有评论显示在“评价电影”窗体的“ 网格视图”控件中。并允许用户插入、修改、删除相应的 评论记录。 – “评价电影”窗体也允许用户由“搜索电影”窗体或“推 荐电影”窗体跳转过来。 – 其界面布局如图9-17所示。
– “推荐电影”窗体,能够在“电影评论表”中找出当前登 录用户没有评价过的电影,然后根据其他人对电影评分的 平均值,按照由高分到低分的原则,向用户列出这些电影 的详细介绍信息。窗体结构和“搜索电影”几乎一样,而 代码实现逻辑完全不同,其窗体布局如图9-19所示。
9.2 窗体设计部分
任务9.1 任务实施
9.1.1 项目概述
―电影荐评系统”的流程图如图9-2所示。
9.1.2 数据库设计
要完成对电影和电影评价的保存,还要记录登录的用户信 息,这个简单的系统需要三张数据表来完成数据的保存。 系统的表结构如下:
1. filmintro(电影介绍表) • 表filmintro用于保存系统所有的电影信息
– 选择【文件】|【新建】|【项目】命令,打开“新建项目 ”对话框,在“模板”区域选择“Windows应用程序”, 在“名称”框里输入本项目的名称“FSS‖,在“位置”框 里设置项目保存的路径,单击“确定”完成项目创建。操 作如图9-8所示。
9.2 窗体设计部分
调试System.IO.FileNotFoundException-原因和修复
![调试System.IO.FileNotFoundException-原因和修复](https://img.taocdn.com/s3/m/58d74426f011f18583d049649b6648d7c1c7082e.png)
调试System.IO.FileNotFoundException-原因和修复今天,我想帮跟踪并修复⼀个⾮常常见且⾮常著名的异常:System.IO.FileNotFoundException。
承认!在所有情况下,此错误都是由于尝试访问不存在的⽂件所致。
但是,实际上有多种情况可以触发此异常。
你可能认为你知道关于这个例外的⼀切,但我打赌你还有⼀些东西要学。
⾄少我在深⼊了解这篇⽂章的细节时做到了。
请继续关注以了解全部情况。
⽂件类型未找到错误让我们来探究这个错误的不同原因。
FileNotFoundException上的Message属性提供了有关发⽣情况的提⽰。
找不到⽂件“filename”如消息所述,您正在尝试加载找不到的⽂件。
可以使⽤⼀⾏代码复现此类错误:try{File.ReadAllText("non-existing.file");}catch (FileNotFoundException e){Console.WriteLine(e.ToString());}第三⾏是这⾥最重要的⼀条。
我正在尝试加载⽂件系统中不存在的⽂件(non existing.file)。
在上⾯的⽰例中,程序将输出打印到控制台,如下所⽰:System.IO.FileNotFoundException: Could not find file 'APP_PATH\bin\Debug\non-existing.file'.File name: 'APP_PATH\bin\Debug\non-existing.file'at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)at System.IO.StreamReader..ctor(String path, Encoding encoding, Boolean detectEncodingFromByteOrderMarks, Int32 bufferSize, Boolean checkHost)at System.IO.File.InternalReadAllText(String path, Encoding encoding, Boolean checkHost)at System.IO.File.ReadAllText(String path)at ConsoleApp.Program.Main(String[] args) in APP_PATH\Program.cs:line 19APP_PATH将是找不到的⽂件的绝对路径。
几种常见的数据库连接方法
![几种常见的数据库连接方法](https://img.taocdn.com/s3/m/b62be4d84bfe04a1b0717fd5360cba1aa8118cca.png)
几种常见的数据库连接方法一、连接Access数据库1.使用已有DSN的连接字符串进行连接(ODBC)使用DSN进行连接〃导入命名空间using System.Data.Odbc;protected void Page_Load(Object sender,EventArgs e)(〃设置连接字符串String connstr=@"DSN=sample";〃实例化Connection对象OdbcConnection myConnection = new OdbcConnection(connstr);〃执行Open方法打开连接myConnection.Open();〃执行SQL语句OdbcCommand myCommand new OdbcCommand("select * from sampletable",myConnection);〃将查询的结果赋给GridView的数据源gv.DataSource = myCommand.ExecuteReader();〃绑定GridViewgv.DataBind();〃关闭连接myConnection.Close();)2.使用无DSN的连接字符串进行连接(ODBC)不使用DSN进行连接〃导入命名空间using System.Data.Odbc;protected void Page_Load(Object sender,EventArgs e)(〃设置连接字符串String connstr=@"Driver=Microsoft Access Driver (*.mdb);Dbq=c:\sample.mdb;";〃实例化Connection对象OdbcConnection myConnection = new OdbcConnection(connstr);〃执行Open方法打开连接myConnection.Open();〃执行SQL语句OdbcCommand myCommand new OdbcCommand("select * from sampletable",myConnection);〃将查询的结果赋给GridView的数据源gv.DataSource = myCommand.ExecuteReader();〃绑定GridViewgv.DataBind();〃关闭连接myConnection.Close();)3.使用连接字符串进行连接(OLEDB) Data Provider 支持的OLEDB Provider:SQLOLEDB:用来访问SQL Server数据库MSDAORA:用来访问Oracle数据库Microsoft.Jet.OLEDB.4.0:用来访问Access 数据库。
C#命名空间详解
![C#命名空间详解](https://img.taocdn.com/s3/m/f9eae83c7275a417866fb84ae45c3b3567ecddbc.png)
System.Diagnostics 提供允许与系统进程、事件日志和性能计数器进行交互的类。此命名空间还提供可以调试应用程序和跟踪代码执行的类。
System.Drawing.Drawing2D 提供高级的二维和向量图形功能。此命名空间包括渐变笔、Matrix类(用于定义几何转换)和GraphicsPath类。
System.Drawing.Imaging 提供高级的GDI+图象处理功能
System.Drawing.Printing 提供与打印相关的服务。
建的,这些对象被配置为要求某些自定服务,如同步,事务,实时(JIT)激活、安全性。多个对象可以存留在以个上下文内。 System.Runtimg.Remoting.Lifetime
包含管理远程对象生存期的类。传统上,分布式垃圾回收功能使用引用计数和Ping来控制对象的生存期、这种机制在每一项服务只有较少的 客户端时可以正常工作,但是当每一项服务有几千个客户端时就不能正常工作了。远程处理生存期服务将每一项服务与一个租约关联,当租
System.Globalization 包含定义区域性相关信息的类,这些信息包括语言、国家/地区、正在使用的日历、日期的格式模式、货币、数字以及字符串的排序顺序。
System.IO 包含允许对数据流和文件进行同步和异步读写的类型。
System.IO.IsolatedStorage 包含允许船舰和使用独立存储区的类型。通过使用这些存储区,可以读写信任度较低的代码无法访问的数据,防止公开可保存在文件系统其
javadirectoryinfo类的常用方法
![javadirectoryinfo类的常用方法](https://img.taocdn.com/s3/m/b73b1216bc64783e0912a21614791711cc797989.png)
javadirectoryinfo类的常用方法DirectoryInfo类位于System.IO命名空间中,它提供了一组方法用于操作文件夹和文件夹的属性。
下面是DirectoryInfo类的一些常用方法:1. Create(:创建一个新的文件夹。
```javaDirectoryInfo dir = new DirectoryInfo("C:\\TestFolder");dir.Create(;```2. Delete(:删除一个文件夹。
```javaDirectoryInfo dir = new DirectoryInfo("C:\\TestFolder");dir.Delete(;```3. GetDirectories(:获取当前文件夹中的所有子文件夹。
```javaDirectoryInfo dir = new DirectoryInfo("C:\\TestFolder");DirectoryInfo[] subDirs = dir.GetDirectories(;foreach (DirectoryInfo subDir in subDirs)Console.WriteLine();```4. GetFiles(:获取当前文件夹中的所有文件。
```javaDirectoryInfo dir = new DirectoryInfo("C:\\TestFolder"); FileInfo[] files = dir.GetFiles(;foreach (FileInfo file in files)Console.WriteLine();```5. GetFileSystemInfos(:获取当前文件夹中的所有文件和子文件夹。
```javaDirectoryInfo dir = new DirectoryInfo("C:\\TestFolder"); FileSystemInfo[] filesAndDirs = dir.GetFileSystemInfos(; foreach (FileSystemInfo fileOrDir in filesAndDirs)Console.WriteLine();```6. Exists:检查文件夹是否存在。
CSharp 语言定义文档 - 9 命名空间详解
![CSharp 语言定义文档 - 9 命名空间详解](https://img.taocdn.com/s3/m/2c2c6810f011f18583d049649b6648d7c1c708ed.png)
9. 命名空间C# 程序是利用命名空间组织起来的。
命名空间既用作程序的“内部”组织系统,也用作“外部”组织系统(一种向其他程序公开自己拥有的程序元素的方法)。
using 指令(第 9.4 节)用来为命名空间的使用提供方便。
9.1 编译单元compilation-unit定义了源文件的总体结构。
编译单元的组成方式如下:先是零个或多个using-directive,后接零个或多个global-attributes,然后是零个或多个namespace-member-declaration。
compilation-unit:extern-alias-directives opt using-directives opt global-attributes optnamespace-member-declarations opt一个 C# 程序由一个或多个编译单元组成,每个编译单元都用一个单独的源文件来保存。
编译 C# 程序时,所有这些编译单元一起进行处理。
因此,这些编译单元间可以互相依赖,甚至以循环方式互相依赖。
编译单元的using-directives影响该编译单元内的global-attributes和namespace-member-declarations,但是不会影响其他编译单元。
编译单元的global-attributes(第 17 章)允许指定目标程序集和模块的特性。
程序集和模块充当类型的物理容器。
程序集可以包含若干个在物理上分离的模块。
程序中各编译单元中的namespace-member-declarations用于为一个称为“全局命名空间”的单个声明空间提供成员。
例如:文件A.cs:class A {}文件B.cs:class B {}这两个编译单元是为该全局命名空间提供成员的,在本例中它们分别声明了具有完全限定名A和B的两个类。
由于这两个编译单元为同一声明空间提供成员,因此如果它们分别包含了一个同名成员的声明,将会是个错误。
微软命名法
![微软命名法](https://img.taocdn.com/s3/m/fb11d7bfb8d528ea81c758f5f61fb7360b4c2bc4.png)
微软命名法简介微软命名法(PascalCase)是一种常用的命名约定,广泛应用于软件开发中的变量、函数、类、接口等标识符的命名。
它以微软公司的命名风格为基础,将单词的首字母大写,并且没有使用下划线或其他分隔符。
微软命名法的优势在于提高了代码的可读性和可维护性,使得代码更加易于理解和修改。
本文将详细介绍微软命名法的规则和使用场景,并给出一些示例。
规则微软命名法的规则如下:1.首字母大写:标识符的每个单词的首字母都需要大写。
例如:MyVariable。
2.没有下划线:不使用下划线或其他分隔符来连接单词。
例如:MyVariable,而不是my_variable。
3.驼峰式:除了首字母大写外,其他字母均使用小写。
例如:myVariable,而不是MyVariable或MYVARIABLE。
4.缩写词:对于缩写词,保持全部大写或全部小写。
例如:XMLParser,httpRequest。
使用场景微软命名法适用于各种编程语言和技术,包括但不限于以下情况:1.变量和常量:使用微软命名法来命名变量和常量,可以提高代码的可读性。
例如:firstName,MAX_RETRY_COUNT。
2.函数和方法:使用微软命名法来命名函数和方法,可以清晰地表达其功能。
例如:getUserById,calculateTotalPrice。
3.类和接口:使用微软命名法来命名类和接口,可以明确表示其用途和职责。
例如:Person,IComparable。
4.文件和文件夹:使用微软命名法来命名文件和文件夹,可以方便地区分和查找。
例如:UserProfile.cs,Controllers。
5.程序集和命名空间:使用微软命名法来命名程序集和命名空间,可以提高代码的组织结构和可维护性。
例如:MyApp.Core,System.IO。
示例下面是一些使用微软命名法的示例:// 变量和常量int maxRetryCount = 3;const string DefaultFirstName = "John";// 函数和方法string getFullName(string firstName, string lastName){return firstName + " " + lastName;}double calculateTotalPrice(double unitPrice, int quantity){return unitPrice * quantity;}// 类和接口class Person{public string FirstName { get; set; }public string LastName { get; set; }}interface IComparable{int CompareTo(object other);}// 文件和文件夹class UserProfile{// 类定义}// 程序集和命名空间namespace MyApp.Core{// 命名空间定义}总结微软命名法是一种常用的命名约定,它以微软公司的命名风格为基础,将单词的首字母大写,并且没有使用下划线或其他分隔符。
SerialPort 类 (System.IO.Ports)
![SerialPort 类 (System.IO.Ports)](https://img.taocdn.com/s3/m/90cca6fd910ef12d2af9e757.png)
Write(String)
将指定的字符串写入串行端口。
Write数据将指定数量的字节写 入串行端口。
Write(Char(), Int32, Int32) 使用缓冲区的数据将指定数量的字符写 入串行端口。
WriteLine
页首
事件
将指定的字符串和 NewLine 值写入输 出缓冲区。
SerialPort 类 (System.IO.Ports)
页首
属性
StopBits)
SerialPort 类的新实例。
名称 BaseStream BaudRate BreakState BytesToRead BytesToWrite CanRaiseEvents
CDHolding Container
/...ameworkMoniker-%FRAMEWORK%2cVERSION%3dV4.0%22);k(DevLang-CSHARP)&rd=true[2011-10-9 11:19:21]
SerialPort 类 (System.IO.Ports)
SerialPort 类 (System.IO.Ports)
主页 技术资源库 学习 下载 支持 社区
登录 | 中国(简体中文) |
使用 Bing 搜索 MSDN
此主题由人工翻译。 将光标移到文章的句子上,以 查看原文。
译文 原文
MSDN Library .NET 开发 .NET Framework 4 .NET Framework 类库 System.IO 命名空间 System.IO.Ports
名称 InfiniteTimeout
说明 指示不应该发生超时。
此类用于控制串行端口文件资源。 此类提供同步 I/O 和事件驱动的 I/O、对管脚 和中断状态的访问以及对串行驱动程序属性的访问。 另外,此类的功能可以包装 在内部 Stream 对象中,可通过 BaseStream 属性访问,并且可以传递给包装 或使用流的类。
面向对象程序设计复习题答案
![面向对象程序设计复习题答案](https://img.taocdn.com/s3/m/e5b231efaff8941ea76e58fafab069dc5022479b.png)
面向对象程序设计复习选择题1. 一个设计得好的面向对象系统具有(B)特征。
A 低内聚、低耦合B 高内聚、低耦合C 高内聚、高耦合D 低内聚、高耦合2. 面向对象程序设计的特点主要概括为(C)。
A 可分解性、可组合性、可分类性B 继承性、封装性、多态性C 抽象封装性、继承性、多态性D 封装性、易维护性、可扩展性、可重用性3. 关于C#程序的书写,下列不正确的说法是( D )。
A. 区分大小写B. 一行可以写多条语句C. 一条语句可写成多行D. 一个类中只能有一个Main()方法,因此多个类中可以有多个Main()方法4. 关于C#语言的基本语法,下列哪些说法正确的是(C)A. C#语言使用using 来引用需要用到的命名空间;B. 用C#编写的程序中,Main 函数是唯一允许的全局函数;C. C#语言中使用的名称严格区分大小写;D. C#中一条语句必须写在一行内;5 以下标识符中,正确的是(A)。
A._nNameB. typeofC. 6bD. x5#6.字符串连接运算符包括&和(A)。
A. +B. -C. *D. /7.拆箱是关于:(B)A、值类型到引用类型的转换B、引用类型到值类型的转换C、引用类型到引用类型的转换D、值类型到值类型的转换8.装箱是关于:(A)A、值类型到引用类型的转换B、引用类型到值类型的转换C、引用类型到引用类型的转换D、值类型到值类型的转换9.下列引用类型和值类型描述正确的是(A)。
A. 引用类型变量保存内存地址,值类型直接保存变量值B. 引用类型在变量中直接保存变量值,值类型保存内存地址C. 引用类型和值类型保存数据的方式相同D. .NET Framework不支持值类型,因为所有的类型都是引用类型了10.一个类中的静态方法的调用可以:(A)A、通过类名调用B、通过实例化的对象调用C、在主方法中直接调用D、在同一个类中的某一方法中直接调用11.以下数据类型中,属于引用类型的是:(A)A、string类型B、double类型C、int类型D、 char类型12.下列类型中为值类型的是(C)A. 字符串类型B. 树组类型C. 枚举类型D. 接口类型13.decimal类型和浮点类型都可以表示小数,正确说法:(C)A. 两者没有任何区别B. 小数类型比浮点类型取值范围大C.小数类型比浮点类型精度高D. 小数类型比浮点类型精度低14. 有定义语句:int [,]a=new int[5,6]; 则下列正确的数组元素的引用是(C)。
C#System命名空间简介
![C#System命名空间简介](https://img.taocdn.com/s3/m/e4d86cad50e79b89680203d8ce2f0066f53364b2.png)
C#System命名空间简介第一篇:C# System命名空间简介System 命名空间类Activator 包含特定的方法,用以在本地或从远程创建对象类型,或获取对现有远程对象的引用。
AppDomain 表示应用程序域,它是一个应用程序在其中执行的独立环境。
不能继承此类。
AppDomainSetup 表示可以添加到AppDomain 的实例的程序集绑定信息。
AppDomainUnloadedException 在尝试访问已卸载的应用程序域时引发的异常。
ApplicationException 发生非致命应用程序错误时引发的异常。
ArgumentException 在向方法提供的其中一个参数无效时引发的异常。
ArgumentNullException 当将空引用(在Visual Basic 中为Nothing)传递给不接受它作为有效参数的方法时引发的异常。
ArgumentOutOfRangeException 当参数值超出调用的方法所定义的允许取值范围时引发的异常。
ArithmeticException 因算术运算、类型转换或转换操作中的错误而引发的异常。
Array 提供创建、操作、搜索和排序数组的方法,因而在公共语言运行库中用作所有数组的基类。
ArrayTypeMismatchException 当试图在数组中存储类型不正确的元素时引发的异常。
AssemblyLoadEventArgs 为AssemblyLoad 事件提供数据。
Attribute 自定义属性的基类。
AttributeUsageAttribute 指定另一特性类的用法。
无法继承此类。
BadImageFormatException 当 DLL 或可执行程序的文件图像无效时引发的异常。
BitConverter 将基础数据类型与字节数组相互转换。
Buffer 操作基元类型的数组。
CannotUnloadAppDomainException 卸载应用程序域的尝试失败时引发的异常。
directoryinfo用法
![directoryinfo用法](https://img.taocdn.com/s3/m/8429d508ff4733687e21af45b307e87101f6f82c.png)
directoryinfo用法介绍本文旨在介绍和使用D ir ec to ry In fo类来操作目录信息。
D i re ct or yI nf o类是S ys te m.IO命名空间中的一个关键类,它提供了获取、创建、移动和删除目录等功能。
创建Direct oryInf o对象在使用D ir ec to ry In f o之前,我们需要创建一个Di re ct ory I nf o对象,示例代码如下所示:s t ri ng pa th="C:\\M y Di re ct or y";D i re ct or yI nf od ire c to ry=n ew Di re cto r yI nf o(pa th);上述代码创建了一个名为`M yD ir ec to ry`的目录,并将其路径存储在`p at h`变量中。
然后,我们通过将路径传递给D ir ec to ry In f o的构造函数来创建了一个Di r ec to ry In fo对象。
获取目录信息一旦我们创建了D ire c to ry In fo对象,就可以使用它来获取目录的各种信息,如目录名称、完整路径、父目录等。
下面是一些常用的示例代码:获取目录完整路径s t ri ng fu ll Pa th=di r ec to r y.F ul lN ame;上述代码将返回目录的完整路径,并将其存储在`fu ll Pa th`变量中。
获取目录名称s t ri ng di re ct or yNa m e=di re ct or y.Nam e;上述代码将返回目录的名称,并将其存储在`d ir ec to ryN a me`变量中。
获取目录父目录D i re ct or yI nf op are n tD ir ec to ry=d ire c to ry.P ar en t;上述代码将返回目录的父目录,并将其存储在`p ar en tD ir ect o ry`变量中。
C#常见的错误类型
![C#常见的错误类型](https://img.taocdn.com/s3/m/e6ad76c027fff705cc1755270722192e453658f1.png)
C#常见的错误类型
Exception应⽤程序执⾏期间发⽣错误
SystemException系统异常所有Exception的基类ArgumentException当⽅法提供的任意⼀个参数⽆效
时,引发此异常
ArithmeticException算数导致的错误
System.Data命名空间提供DataException在使⽤组件时⽣成错
误
FormatException参数的格式不符合被调⽤⽅法的
参数规范
IOException IO错误System.IO命名空间提供IndexOutOfRangeException数组越界
ArgumentNullException空引⽤传递给⽆效参数的⽅法时
对应JAVA的空指针
引发
DivideByZeroException0为除数
OverflowException运算结果过⼤,⽆法以⽬标格式
⽐如把⼀个30位数字赋给int
保存
ApplicationException应⽤程序执⾏过程中检测到由应
⽤程序定义的异常
TargetException试图调⽤⽆效⽬标时System.Reflection命名空间提供
异常类常⽤属性
Message提供引发异常的详细信息
Source此属性表⽰导致异常发⽣地应⽤程序或对象名
StackTrace此属性提供在堆栈上所调⽤⽅法的详细信息,并⾸先显⽰最
近调⽤的⽅法
InnerException对内部异常的引⽤,如果此异常基于前⼀个异常,则
内部异常指最初发⽣地异常。
二进制编辑器
![二进制编辑器](https://img.taocdn.com/s3/m/684749483b3567ec102d8a27.png)
二进制数据的读取与显示
if (this->buffer == nullptr) return; …// 清空四个列表框 String ^hexAddr, ^binData, ^hexData, ^ascData; hexAddr=binData=hexData=ascData=String::Empty; // 清空 for (int i=0; i<this->buffer->Length; i++) { // 读取字节数据中的所有字 hexAddr = i.ToString(L"X6"); // 偏移量,6位的十六进制表示 if (i%8 == 0) // 起始偏移量 this->listBox1->Items->Add(hexAddr); if (i && (i%8 == 0)) { // 每行8字节 this->listBox2->Items->Add(hexData); // 十六进制 this->listBox3->Items->Add(ascData); // ASC码 this->listBox4->Items->Add(binData); // 二进制 hexData=binData=ascData=String::Empty; // 清空后再记录下一行 } ascData += System::Char(this->buffer[i]); // ASCII字符 hexData += this->buffer[i].ToString(L"X2") + L" "; // 2位定长的十六进制 binData += Convert::ToString(this->buffer[i], 2)->PadLeft(8, '0') + L" "; // 转换为二进制, 8位定长 }
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
319 IDisposable 接口,故使用后必须关闭流。
9.1.2 System.IO 命名空间中的类
在System.IO 命名空间中定义了一系列关于文件与数据流的类,可用于按同步/异步方式来读/写数据流和文件,进行文件的压缩/解压缩,或者通过管道与串行端口启用通信。
使用这些类时,需要使用语句
using System.IO
来引用这个命
名空间。
控制台I/O 操作也是通过流对象来进行的,但用于控制台I/O 的Console 类是在
System 命名空间中定义的,故不必为控制台I/O 指定System.IO 命名空间。
1.System.IO 命名空间中的流类和文件类
System.IO 命名空间中的数据流与文件相关类主要包括以下几点。
● 字节流相关类:Stream 、BufferedStream 、MemoryStream 、UnmanagedMemoryStream 、FileStream 。
● 字符I/O 流相关类:TextReader 、TextWriter 、StreamReader 、StreamWriter 、StringReader 、StringWriter 。
● 二进制I/O 流相关类:BinaryReader 和BinaryWriter 。
● 文件系统操作相关类:File 、Path 、Directory 、FileSystemInfo 、FileInfo 、DirectoryInfo 、DriveInfo 。
● I/O 枚举:FileAccess 、FileAttributes 、FilenameOptions 、FileShare 。
● FileMode 、SearchOption 、SeekOrigin 、DirveType 。
● I/O 异常类:IOException 、FileLoadException 、DriveNotFoundException 、FileNotFoundException 、DirectoryNotFoundException 、PathTooLongException 、EndOfStreamException 。
2.基本的文件I/O
Stream 类是流的抽象基类,定义流的基本操作(支持同步和异步操作)。
所有表示流的类都继承自该类。
Stream 类及其派生类提供数据源和存储库的一般视图,使得用户不必了解操作系统和后备设备的细节便可使用它。
流的基本操作有3种。
● 从流中读取:即从流到数据结构(如字节数组)的数据传输。
● 向流中写入:即从数据结构到流的数据传输。
● 在流中查找:即对流中当前位置进行查询和修改。
根据基础数据源或储存库,某些流可能不完全支持这几种功能。
例如,NetworkStreams 不支持查找。
Stream 的CanRead 、CanWrite 和CanSeek 属性及其派生类决定不同的流所支持的操作。
3.从 System.Object 派生的I/O 类
(1)BinaryReader 类和BinaryWriter 类:用于从Streams 对象中读取或向Streams 对象中写入编码的字符串和基元数据类型。
(2)File 类:提供创建、打开、复制、删除和移动文件的静态方法并协助创建FileStream 对象。
FileInfo 类(派生自FileSystemInfo 类)提供实例方法。