当前位置: 首页 > news >正文

wordpress子网站杭州化工网站建设

wordpress子网站,杭州化工网站建设,php网站开发if的代码,机械类 网站源码接收命令行参数 命令行程序是计算机程序最基础的存在形式#xff0c;几乎所有的操作系统都支持命令行程序并将可视化程序的运行基于命令行机制。 命令行程序必须能够接收来自命令行环境的参数#xff0c;这些参数往往在一条命令行的命令之后以空格符分隔。 在很多语言中几乎所有的操作系统都支持命令行程序并将可视化程序的运行基于命令行机制。 命令行程序必须能够接收来自命令行环境的参数这些参数往往在一条命令行的命令之后以空格符分隔。 在很多语言中如 Java 和 C/C环境参数是以主函数的参数常常是一个字符串数组传递给程序的但在 Rust 中主函数是个无参函数环境参数需要开发者通过 std::env 模块取出过程十分简单 实例 fn main() {let args  std::env::args();println!({:?}, args); } 现在直接运行程序 Args { inner: [D:\\rust\\greeting\\target\\debug\\greeting.exe] } 也许你得到的结果比这个要长的多这很正常这个结果中 Args 结构体中有一个 inner 数组只包含唯一的字符串代表了当前运行的程序所在的位置。 但这个数据结构令人难以理解没关系我们可以简单地遍历它 实例 fn main() {let args  std::env::args();for arg in args {println!({}, arg);} } 运行结果 D:\rust\greeting\target\debug\greeting.exe 一般参数们就是用来被遍历的不是吗。 现在我们打开许久未碰的 launch.json 找到 args: []这里可以设置运行时的参数我们将它写成 args: [first, second] 然后保存、再次运行刚才的程序运行结果 D:\rust\greeting\target\debug\greeting.exe first second 作为一个真正的命令行程序我们从未真正使用过它作为语言教程不在此叙述如何用命令行运行 Rust 程序。但如果你是个训练有素的开发者你应该可以找到可执行文件的位置你可以尝试进入目录并使用命令行命令来测试程序接收命令行环境参数。 命令行输入 早期的章节详细讲述了如何使用命令行输出这是由于语言学习的需要没有输出是无法调试程序的。但从命令行获取输入的信息对于一个命令行程序来说依然是相当重要的。 在 Rust 中std::io 模块提供了标准输入可认为是命令行输入的相关功能 实例 use std::io::stdin;fn main() { let mut str_buf  String::new();stdin().read_line(mut str_buf).expect(Failed to read line.);println!(Your input line is \n{}, str_buf); } 令 VSCode 环境支持命令行输入是一个非常繁琐的事情牵扯到跨平台的问题和不可调试的问题所以我们直接在 VSCode 终端中运行程序。在命令行中运行 D:\rust\greeting cd ./target/debug D:\rust\greeting\target\debug ./greeting.exe RUNOOB Your input line is RUNOOB std::io::Stdio 包含 read_line 读取方法可以读取一行字符串到缓冲区返回值都是 Result 枚举类用于传递读取中出现的错误所以常用 expect 或 unwrap 函数来处理错误。 注意目前 Rust 标准库还没有提供直接从命令行读取数字或格式化数据的方法我们可以读取一行字符串并使用字符串识别函数处理数据。 文件读取 我们在计算机的 D:\ 目录下建立文件 text.txt内容如下 This is a text file. 这是一个将文本文件内容读入字符串的程序 实例 use std::fs;fn main() {let text  fs::read_to_string(D:\\text.txt).unwrap();println!({}, text); } 运行结果 This is a text file. 在 Rust 中读取内存可容纳的一整个文件是一件极度简单的事情std::fs 模块中的 read_to_string 方法可以轻松完成文本文件的读取。 但如果要读取的文件是二进制文件我们可以用 std::fs::read 函数读取 u8 类型集合 实例 use std::fs;fn main() {let content  fs::read(D:\\text.txt).unwrap();println!({:?}, content); } 运行结果 [84, 104, 105, 115, 32, 105, 115, 32, 97, 32, 116, 101, 120, 116, 32, 102, 105, 108, 101, 46] 以上两种方式是一次性读取十分适合 Web 应用的开发。但是对于一些底层程序来说传统的按流读取的方式依然是无法被取代的因为更多情况下文件的大小可能远超内存容量。 Rust 中的文件流读取方式 实例 use std::io::prelude::*; use std::fs;fn main() {let mut buffer  [0u8; 5];let mut file  fs::File::open(D:\\text.txt).unwrap();file.read(mut buffer).unwrap();println!({:?}, buffer);file.read(mut buffer).unwrap();println!({:?}, buffer); } 运行结果 [84, 104, 105, 115, 32] [105, 115, 32, 97, 32] std::fs 模块中的 File 类是描述文件的类可以用于打开文件再打开文件之后我们可以使用 File 的 read 方法按流读取文件的下面一些字节到缓冲区缓冲区是一个 u8 数组读取的字节数等于缓冲区的长度。 注意VSCode 目前还不具备自动添加标准库引用的功能所以有时出现函数或方法不存在一样的错误有可能是标准库引用的问题。我们可以查看标准库的注释文档鼠标放到上面会出现来手动添加标准库。 std::fs::File 的 open 方法是只读打开文件并且没有配套的 close 方法因为 Rust 编译器可以在文件不再被使用时自动关闭文件。 文件写入 文件写入分为一次性写入和流式写入。流式写入需要打开文件打开方式有新建create和追加append两种。 一次性写入 实例 use std::fs;fn main() {fs::write(D:\\text.txt, FROM RUST PROGRAM).unwrap(); } 这和一次性读取一样简单方便。执行程序之后 D:\text.txt 文件的内容将会被重写为 FROM RUST PROGRAM 。所以一次性写入请谨慎使用因为它会直接删除文件内容无论文件多么大。如果文件不存在就会创建文件。 如果想使用流的方式写入文件内容可以使用 std::fs::File 的 create 方法 实例 use std::io::prelude::*; use std::fs::File;fn main() {let mut file  File::create(D:\\text.txt).unwrap();file.write(bFROM RUST PROGRAM).unwrap(); } 这段程序与上一个程序等价。 注意打开的文件一定存放在可变的变量中才能使用 File 的方法 File 类中不存在 append 静态方法但是我们可以使用 OpenOptions 来实现用特定方法打开文件 实例 use std::io::prelude::*; use std::fs::OpenOptions;fn main() - std::io::Result() {let mut file  OpenOptions::new().append(true).open(D:\\text.txt)?;file.write(b APPEND WORD)?;Ok(()) } 运行之后D:\text.txt 文件内容将变成 FROM RUST PROGRAM APPEND WORD OpenOptions 是一个灵活的打开文件的方法它可以设置打开权限除append 权限以外还有 read 权限和 write 权限如果我们想以读写权限打开一个文件可以这样写 实例 use std::io::prelude::*; use std::fs::OpenOptions;fn main() - std::io::Result() {let mut file  OpenOptions::new().read(true).write(true).open(D:\\text.txt)?;file.write(bCOVER)?;Ok(()) } 运行之后D:\text.txt 文件内容将变成 COVERRUST PROGRAM APPEND WORD
http://www.zqtcl.cn/news/922002/

相关文章:

  • 网站怎么做前后台存取马鞍山市网站建设公司
  • 北京西站到北京南站软件定制外包公司
  • 网站开发手机端游戏网站设计风格有哪些
  • 网站建设开发感想网站建设公司接单
  • 建立网站后怎样收费吗设计图纸网站
  • asp网站密码从零开始做一个网站需要多少钱
  • 网站建设中需求分析报告微信 网站 优劣势
  • 湖南建设长沙网站建设价格关于网站的建设论文
  • 玉林网站制作网站建设的常用词
  • linux系统网站空间用凡科做网站的费用
  • 如何给别人做网站百度推广助手app
  • 哈市哪里网站做的好新颖的网站策划
  • 网站建设 方案书微信登录wordpress免费
  • 兰州网站建设企业名录洛可可设计公司估值
  • 广州做网站地方兰州做网站的公司有哪些
  • 招标网站哪个好适合学生做网站的图片
  • 台州seo网站排名优化外包服务公司
  • 汉川网站推广服务网页站点不安全
  • wdcp网站搬家嘉兴做网站优化的公司
  • 网站规划和建设度假区网站建设方案
  • 做网站前端用什么软件好在线种子资源网
  • 怎样修改网站关键词昌平做网站的公司
  • 网站建设调研文档网站最下面版权模板
  • 建外贸网站有效果吗开发电商平台需要多少钱
  • 成都网站建设维护网页制作价格私活
  • 建设银行网站登陆不上做本地的分类信息网站
  • 公司网站建设哪里实惠网页设计作业百度网盘
  • 如何seo网站挣钱不同企业的网络营销网站
  • 自己做网站有什么用网站怎样设计网址
  • 做任务的网站有那些wordpress链接在哪里