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

Go入门之文件

以只读方式打开文件

package mainimport ("fmt""io""os"
)func main() {file, err := os.Open("./main.go")defer file.Close()if err != nil {fmt.Println(err)return}fmt.Println(file)var tempSlice = make([]byte, 128)var strSlice []bytefor {n, errr := file.Read(tempSlice)if errr == io.EOF {fmt.Println("读取完成")break}if errr != nil {fmt.Println("失败")}fmt.Println(n)strSlice = append(strSlice, tempSlice[:n]...)}fmt.Println(string(strSlice))
}

第二种

package mainimport ("bufio""fmt""io""os"
)func main() {file, err := os.Open("./main.go")defer file.Close()if err != nil {fmt.Println(err)return}reader := bufio.NewReader(file)var fileStr stringfor {str, err := reader.ReadString('\n')if err == io.EOF {fileStr += strbreak}if err != nil {fmt.Println(err)return}fileStr += str}fmt.Println(fileStr)
}

注意读取结束后还可能会有残留数据

第三种

package mainimport ("fmt""io/ioutil"
)func main() {file, err := ioutil.ReadFile("./main.go")if err != nil {fmt.Println(err)}fmt.Println(string(file))
}

第一种写入的方法

package mainimport ("fmt""os"
)func main() {file, err := os.OpenFile("D:/test.txt", os.O_WRONLY|os.O_CREATE|os.O_TRUNC, 0666)defer file.Close()if err != nil {fmt.Println(err)return}for i := 0; i < 10; i++ {file.WriteString("w123\r\n")}file.Write([]byte("123123"))
}
package mainimport ("bufio""fmt""os"
)func main() {file, err := os.OpenFile("D:/test.txt", os.O_WRONLY|os.O_CREATE|os.O_TRUNC, 0666)defer file.Close()if err != nil {fmt.Println(err)return}writer := bufio.NewWriter(file)for i := 0; i < 10; i++ {writer.WriteString("你好")writer.Flush()}}

第三种

package mainimport ("fmt""io/ioutil"
)func main() {str := "hello"err := ioutil.WriteFile("D:/test.txt", []byte(str), 0666)if err != nil {fmt.Println(err)return}
}

可以通过ioutil包来复制文件,先读,再写,其他两种方式也可以

创建目录

err:=os.MkdirAll("./abc/a/b/c",0666)

删除

err:=os.Remove("aaa.txt")

os.RemoveAll 删除所有文件

os.Rename(xxx,yyy)重命名

相关文章:

Go入门之文件

以只读方式打开文件 package mainimport ("fmt""io""os" )func main() {file, err : os.Open("./main.go")defer file.Close()if err ! nil {fmt.Println(err)return}fmt.Println(file)var tempSlice make([]byte, 128)var strSlice…...

基因型—环境两向表数据分析——品种生态区划分

参考资料&#xff1a;农作物品种试验数据管理与分析 用于品种生态区划分的GGE双标图有两种功能图&#xff1a;试点向量功能图和“谁赢在哪里”功能图。双标图的具体模型基于SD定标和h加权和试点中心化的数据。本例中籽粒产量的GGE双标图仅解释了G和GE总变异的53.6%&#xff0c;…...

Leetcode2414:最长的字母序连续子字符串的长度

题目描述&#xff1a; 字母序连续字符串 是由字母表中连续字母组成的字符串。换句话说&#xff0c;字符串 "abcdefghijklmnopqrstuvwxyz" 的任意子字符串都是 字母序连续字符串 。 例如&#xff0c;"abc" 是一个字母序连续字符串&#xff0c;而 "ac…...

React(12)案例前期准备

1、创建项目 npx creat-react-app xxx 这里注意 react版本过高会导致antd组件无法安装 需要手动修改pagejson文件中的react和react-demo版本号为 18.2.0 npm i 在配置别名路径 创建craco文件 const path require("path"); module.exports {webpack: {alias: …...

2025年2月28日(RAG)

从图片中的内容来看&#xff0c;用户提到的“RAG”实际上是“Retrieval-Augmented Generation”的缩写&#xff0c;中文称为“检索增强生成”。这是一种结合了检索&#xff08;Retrieval&#xff09;和生成&#xff08;Generation&#xff09;的技术&#xff0c;用于增强自然语…...

python-leetcode-寻找重复数

287. 寻找重复数 - 力扣&#xff08;LeetCode&#xff09; class Solution:def findDuplicate(self, nums: List[int]) -> int:# Step 1: 找到环的相遇点slow nums[0]fast nums[0]# 使用快慢指针&#xff0c;直到相遇while True:slow nums[slow] # 慢指针走一步fast nu…...

Vue 3 中,如果 public 目录下的 .js 文件中有一个函数执行后生成数据,并希望将这些数据传递到组件中

在 Vue 3 中&#xff0c;如果 public 目录下的 .js 文件中有一个函数执行后生成数据&#xff0c;并希望将这些数据传递到组件中&#xff0c;可以使用 window.postMessage&#xff0c;但需要结合具体场景。以下是不同方法的详细说明&#xff1a; 方法 1&#xff1a;使用 window…...

ai大模型自动化测试-TensorFlow Testing 测试模型实例

AI大模型自动化测试是确保模型质量、可靠性和性能的关键环节,以下将从测试流程、测试内容、测试工具及测试挑战与应对几个方面进行详细介绍: 测试流程 测试计划制定 确定测试目标:明确要测试的AI大模型的具体功能、性能、安全性等方面的目标,例如评估模型在特定任务上的准…...

初阶MySQL(两万字全面解析)

文章目录 1.初识MySQL1.1数据库1.2查看数据库1.3创建数据库1.4字符集编码和排序规则1.5修改数据库1.6删除数据库 2.MySQL常用数据类型和表的操作2.(一)常用数据类型1.数值类2.字符串类型3.二进制类型4.日期类型 2.(二)表的操作1查看指定库中所有表2.创建表 3.查看表结构和查看表…...

数据库数据恢复—SQL Server附加数据库报错“错误 823”怎么办?

SQL Server数据库附加数据库过程中比较常见的报错是“错误 823”&#xff0c;附加数据库失败。 如果数据库有备份则只需还原备份即可。但是如果没有备份&#xff0c;备份时间太久&#xff0c;或者其他原因导致备份不可用&#xff0c;那么就需要通过专业手段对数据库进行数据恢复…...

SpringBatch简单处理多表批量动态更新

项目需要处理一堆表&#xff0c;这些表数据量不是很大都有经纬度信息&#xff0c;但是这些表的数据没有流域信息&#xff0c;需要按经纬度信息计算所属流域信息。比较简单的项目&#xff0c;按DeepSeek提示思索完成开发&#xff0c;AI真好用。 阿里AI个人版本IDEA安装 IDEA中使…...

夜莺监控 - 边缘告警引擎架构详解

前言 夜莺类似 Grafana 可以接入多个数据源&#xff0c;查询数据源的数据做告警和展示。但是有些数据源所在的机房和中心机房之间网络链路不好&#xff0c;如果由 n9e 进程去周期性查询数据并判定告警&#xff0c;那在网络链路抖动或拥塞的时候&#xff0c;告警就不稳定了。所…...

18440二维差分

18440二维差分 ⭐️难度&#xff1a;中等 &#x1f4d6; &#x1f4da; import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner scanner new Scanner(System.in);int n scanner.nextInt();int m scanner.nextInt();int q scanne…...

安全传输,高效共享 —— 体验FileLink的跨网文件传输

在当今数字化转型的浪潮中&#xff0c;企业在进行跨网文件传输时面临诸多挑战&#xff0c;包括数据安全、传输速度和用户体验等。为了解决这些问题&#xff0c;FileLink应运而生&#xff0c;成为一款高效、安全的跨网文件传输解决方案。 一、FileLink的核心特点 1.加密技术 …...

SOME/IP 教程知识点总结

总结关于SOME/IP的教程,首先通读整个文件,理解各个部分的内容。看起来这个教程从介绍开始,讲到了为什么在车辆中使用以太网,然后详细讲解了SOME/IP的概念、序列化、消息传递、服务发现(SOME/IP-SD)、发布/订阅机制以及支持情况。 首先,我需要确认每个章节的主要知识点。…...

学习路程八 langchin核心组件 Models补充 I/O和 Redis Cache

前序 之前了解了Models&#xff0c;Prompt&#xff0c;但有些资料又把这块与输出合称为模型输入输出&#xff08;Model I/O&#xff09;‌&#xff1a;这是与各种大语言模型进行交互的基本组件。它允许开发者管理提示&#xff08;prompt&#xff09;&#xff0c;通过通用接口调…...

图书数据采集:使用Python爬虫获取书籍详细信息

文章目录 一、准备工作1.1 环境搭建1.2 确定目标网站1.3 分析目标网站二、采集豆瓣读书网站三、处理动态加载的内容四、批量抓取多本书籍信息五、反爬虫策略与应对方法六、数据存储与管理七、总结在数字化时代,图书信息的管理和获取变得尤为重要。通过编写Python爬虫,可以从各…...

【DeepSeek系列】05 DeepSeek核心算法改进点总结

文章目录 一、DeepSeek概要二、4个重要改进点2.1 多头潜在注意力2.2 混合专家模型MoE2.3 多Token预测3.4 GRPO强化学习策略 三、2个重要思考3.1 大规模强化学习3.2 蒸馏方法&#xff1a;小模型也可以很强大 一、DeepSeek概要 2024年&#xff5e;2025年初&#xff0c;DeepSeek …...

安装pointnet2-ops库

由于服务器没有连网&#xff0c;现在已在github中下载pointnet2_ops文件包并上传到服务器 &#xff08;首先保证cuda版本和pytorch版本对应&#xff09; 如何查找cuda的安装路径&#xff1a; 然后执行安装命令即可。...

DO-254航空标准飞行器电机控制器设计注意事项

DO-254航空标准飞行器电机控制器设计注意事项 1.核心要求1.1 设计保证等级(DAL)划分1.2生命周期管理1.3验证与确认2.电机控制器硬件设计的关键注意事项2.1需求管理与可追溯性2.2冗余与容错设计2.3验证与确认策略2.4元器件选型与管理2.5环境适应性设计2.6文档与配置管理3.应用…...

P1313 计算系数【洛谷算法习题】

P1313 计算系数 网页链接 P1313 计算系数 题目描述 给定一个多项式 (byax)k(byax)^k(byax)k&#xff0c;请求出多项式展开后 xnymx^n\times y^mxnym 项的系数。 输入格式 输入共一行&#xff0c;包含 555 个整数&#xff0c;分别为 a,b,k,n,ma,b,k,n,ma,b,k,n,m&#xf…...

【限时解析】DeepSeek 2024 Q3计费规则更新:2项重大变更将影响92%高频用户

更多请点击&#xff1a; https://kaifayun.com 第一章&#xff1a;DeepSeek计费模式分析 DeepSeek 提供的 API 服务采用按量计费&#xff08;Pay-as-you-go&#xff09;模式&#xff0c;核心计费维度为模型调用所消耗的 Token 总数&#xff0c;包含输入&#xff08;prompt&…...

2026破圈!5款一键生成论文工具亲测,打破思路枯竭,初稿半天搞定

对于学生、科研工作者而言&#xff0c;论文写作往往面临诸多挑战&#xff1a;文献资料繁杂难寻、格式排版反复调整、重复率居高不下、逻辑结构难以梳理&#xff0c;这些痛点严重制约了写作效率与研究成果的呈现质量。随着2026年AI技术的不断突破与优化&#xff0c;各类AI论文写…...

【工信部备案级新闻稿生成协议】:ChatGPT输出自动匹配《新闻采编规范》第4.2.1条的7层校验模板

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;【工信部备案级新闻稿生成协议】的合规性定位与政策背景 【工信部备案级新闻稿生成协议】并非独立行政规章&#xff0c;而是对《互联网信息服务算法推荐管理规定》《生成式人工智能服务管理暂行办法》…...

Node.js 项目如何集成 Taotoken 实现稳定的大模型调用

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 Node.js 项目如何集成 Taotoken 实现稳定的大模型调用 对于 Node.js 后端服务开发者而言&#xff0c;在项目中引入大模型能力正变得…...

重新定义Android设备管理:告别命令行,拥抱可视化操作新时代

重新定义Android设备管理&#xff1a;告别命令行&#xff0c;拥抱可视化操作新时代 【免费下载链接】FastbootEnhance A user-friendly Fastboot ToolBox & Payload Dumper for Windows 项目地址: https://gitcode.com/gh_mirrors/fa/FastbootEnhance 你是否曾经面对…...

仅剩最后47套!《ChatGPT脑筋急转弯生成军规手册》PDF+127个经A/B测试验证的高互动Prompt模板(含儿童/职场/银发三版适配)

更多请点击&#xff1a; https://kaifayun.com 第一章&#xff1a;ChatGPT脑筋急转弯生成的核心价值与认知重构 传统脑筋急转弯创作依赖人类经验直觉&#xff0c;存在耗时长、多样性受限、语义陷阱设计不精准等瓶颈。而基于大语言模型的自动化生成&#xff0c;不仅突破了创意密…...

Java中的Comparator 和JS中的回调函数好相似

Comparator 在 Java 中的地位&#xff0c;非常像 JavaScript 中 Array.prototype.sort() 那个接收的 回调函数 (Comparison Function)。1. Comparator 是什么&#xff1f;在 Java 中&#xff0c;Comparator 是一个接口&#xff0c;它的核心作用是定义“比较逻辑”。在 Java 8 之…...

3步搞定Mac Boot Camp驱动自动化部署:Brigadier完全指南

3步搞定Mac Boot Camp驱动自动化部署&#xff1a;Brigadier完全指南 【免费下载链接】brigadier Fetch and install Boot Camp ESDs with ease. 项目地址: https://gitcode.com/gh_mirrors/bri/brigadier 还在为Mac电脑安装Windows系统后的驱动问题头疼吗&#xff1f;Br…...

终极iOS设备激活解锁解决方案:Applera1n完全指南

终极iOS设备激活解锁解决方案&#xff1a;Applera1n完全指南 【免费下载链接】applera1n icloud bypass for ios 15-16 项目地址: https://gitcode.com/gh_mirrors/ap/applera1n 你是否曾经遇到过二手iPhone或iPad无法激活的困境&#xff1f;当你满怀期待地拿到一台设备…...