diff --git a/docs/sbs/zh/sbs/file.md b/docs/sbs/zh/sbs/file.md index 09da331a55f711ac29373df65f136f0be01a0abf..5871ff7b89f26f4ef19baf3666d205c6808ed140 100644 --- a/docs/sbs/zh/sbs/file.md +++ b/docs/sbs/zh/sbs/file.md @@ -21,25 +21,7 @@ ## 文件的基本操作 -### 文件操作类型 - -- 打开文件 -- 读、写文件 - - 读 : 将文件内容读入内存 - - 写 : 将内存内容写入文件 -- 关闭文件 - -### 文件访问方式 - -表 **1**: 文件访问方式 - -| 访问方式 | 说明 | -| -------- | ------------------------------------------------------------ | -| r | 以只读方式打开文件。文件的指针将会放在文件的开头,为默认模式。如果文件不存在,抛出异常 。 | -| w | 以只写方式打开文件。如果文件存在会被覆盖;如果文件不存在,创建新文件。 | -| a | 以读写方式打开文件。如果该文件已存在,文件指针将会放在文件的结尾。如果文件不存在,创建新文件进行写入。 | - -**备注** :若频繁移动文件指针,会影响文件的读写效率。通常,在开发过程中会以只读、只写的方式来操作文件。 +具体的API 详解请参考[QuecPython-标准库-uio](https://python.quectel.com/wiki/#/zh-cn/api/pythonStdlib?id=uio-输入输出流)。 ## 文件操作函数 @@ -60,7 +42,7 @@ ![QuecPytgon_sbs_file_01.png](media/QuecPytgon_sbs_file_01.png) -​ 图 **1**: **EC600S-CN QuecPython** 开发板与电脑连接 +图 **1**: **EC600S-CN QuecPython** 开发板与电脑连接 ### 以只读方式打开文件 @@ -73,11 +55,9 @@ import uio # 以只读方式打开 test.txt 文件 fd = uio.open("usr/test.txt", mode='r') - # 读取文件内容 text = fd.read() print(text) - # 关闭文件 fd.close() ``` @@ -86,7 +66,7 @@ fd.close() ![QuecPytgon_sbs_file_02.png](media/QuecPytgon_sbs_file_02.png) -​ 图 **2**: 在 **test.txt** 文件输入 **"hello python"** +图 **2**: 在 **test.txt** 文件输入 **"hello python"** 步骤 二 : 将 *test.py* 文件和 *test.txt* 文件分别上传到 EC600S-CN QuecPython 开发板内,上传方法详见[《Quectel_QuecPython_基础操作说明》](https://python.quectel.com/doc/doc/sbs/zh/index.html)。 @@ -94,34 +74,66 @@ fd.close() ![QuecPytgon_sbs_file_03.png](media/QuecPytgon_sbs_file_03.png) -​ 图 **3**: 读取文件运行结果 +图 **3**: 读取文件运行结果 ### 以只写方式打开文件 步骤一 : 创建 *test.py* 文件及内容为空白的 *test.txt* 文件,在 *test.py* 文件中导入 QuecPython 中的 uio 模 - 块,并编写如下代码 : ```python import uio # 以只写方式打开 test.txt 文件 -fd = uio.open("usr/test.txt", mode='w') - +fd = uio.open("usr/test.txt", mode='w') # 向文件写内容 -fd.write("HELLO PYTHON") - +fd.write("HELLO PYTHON") # 关闭文件 fd.close() ``` -步骤 二 : 将 *test.py* 文件和 *test.txt* 文件分别上传到 EC600S-CN QuecPython 开发板内,上传方法详见[《Quectel_QuecPython_基础操作说明》](https://python.quectel.com/doc/doc/sbs/zh/index.html)。 +步骤 二 : 将 *test.py* 文件和 *test.txt* 文件分别上传到 EC600S-CN QuecPython 开发板内。 步骤 三 : 参照5.1运行只读文件方式显示文件,可得到写入结果。 ![QuecPytgon_sbs_file_04.png](media/QuecPytgon_sbs_file_04.png) -​ 图 **4**: 写入文件运行结果 +图 **4**: 写入文件运行结果 + +### 以只写追加模式打开文件 + +步骤一 : 创建 *text.py*、*text.txt* 文件, 并 在 *test.py* 文件中导入 QuecPython 中的 *uio* 模块,在 *test.txt* 文件输入 "hello python"。 + +- 在 t*est.py* 文件中导入 QuecPython 中的 *uio* 模块: + +```python +import uio + +# 以追加方式打开 text.txt 文件 +fd = uio.open("usr/text.txt", mode='a') +# 向文件追加写内容 +fd.write("Hello Quectel") +# 关闭文件 +fd.close() + +# 以只读方式打开看追加的结果 +fd = uio.open("usr/text.txt", mode='r') +# 读取文件内容 +text = fd.read() +print(text) +# 关闭文件 +fd.close() +``` +- 在 *test.txt* 文件输入 "hello python": + +![QuecPytgon_sbs_file_08.png](media/QuecPytgon_sbs_file_08.png) +图 **5**: 在 **test.txt** 文件输入 **"hello QuecPython"** + +步骤 二 : 将 *text.py* 文件和 *text.txt* 文件分别上传到 EC600S-CN QuecPython 开发板内。 + +步骤 三 : 获取追加结果。 + +![QuecPytgon_sbs_file_09.png](media/QuecPytgon_sbs_file_09.png) ### 使用 uos 模块 具体的API 详解请参考[QuecPython-标准库-uos](https://python.quectel.com/wiki/#/zh-cn/api/pythonStdlib?id=uos-基本系统服务)。 @@ -130,22 +142,45 @@ fd.close() ![QuecPytgon_sbs_file_05.png](media/QuecPytgon_sbs_file_05.png) -​ 图 **5**: 列出当前文件列表 +图 **6**: 列出当前文件列表 #### 新建目录 ![QuecPytgon_sbs_file_05.png](media/QuecPytgon_sbs_file_05.png) -​ 图 **6**: 新建目录 +图 **7**: 新建目录 #### 删除目录 ![QuecPytgon_sbs_file_06.png](media/QuecPytgon_sbs_file_06.png) -​ 图 **7**: 删除目录 +​图 **8**: 删除目录 **备注**: apn_cfg.json 为默认脚本文件。 +#### 获取模块可用Flash信息 + +- **示例代码** + +```python +import uos + +# 检查模组剩余空间信息 +res = uos.statvfs("/usr") +res = list(res) +print('获取文件系统状态信息:', res) +print('f_bsize – 文件系统块大小,单位字节:', res[0]) +print('f_bfree – 可用块数:', res[3]) +print('剩下总空间 {} 字节'.format(res[0] * res[3])) +``` +- **代码运行结果** + +![QuecPytgon_sbs_file_10.png](media/QuecPytgon_sbs_file_10.png) + + 图 **9**: 获取可用Flash信息 + + + ### 附录术语缩写 diff --git a/docs/sbs/zh/sbs/http.md b/docs/sbs/zh/sbs/http.md index fc4412ceb2651378facfe56ce1daa3d490aa9091..15bf6f63f389098ee19c41d1cb1d896fb1ad3601 100644 --- a/docs/sbs/zh/sbs/http.md +++ b/docs/sbs/zh/sbs/http.md @@ -139,10 +139,10 @@ response =request.get(address) | **方法** | **说明** | | ---------------- | --------------------------------------- | -| response.content | 返回响应的内容,以字节为单位 | -| response.text | 以文本方式返回响应的内容,编码为unicode | -| response.json() | 返回响应的json编码内容并转为dict类型 | -| response.close() | 关闭socket | +| response.content | 返回响应的内容,以字节为单位。如果想取图片,文件,则可以通过它获取。| +| response.text | 以文本方式返回响应的内容,编码为unicode。如果你想取文本,可以通过它获取。由于response.text是个迭代器,需要用for访问内容。| +| response.json() | 返回响应的json编码内容并转为dict类型。 | +| response.close() | 关闭socket。 | ## 示例 diff --git a/docs/sbs/zh/sbs/media/QuecPytgon_sbs_file_08.png b/docs/sbs/zh/sbs/media/QuecPytgon_sbs_file_08.png new file mode 100644 index 0000000000000000000000000000000000000000..e29753d5cf3d2e83c919fcce4d739bffc173c44a Binary files /dev/null and b/docs/sbs/zh/sbs/media/QuecPytgon_sbs_file_08.png differ diff --git a/docs/sbs/zh/sbs/media/QuecPytgon_sbs_file_09.png b/docs/sbs/zh/sbs/media/QuecPytgon_sbs_file_09.png new file mode 100644 index 0000000000000000000000000000000000000000..ecd20039b6eed73d6ef3d060a73606ca6792dd64 Binary files /dev/null and b/docs/sbs/zh/sbs/media/QuecPytgon_sbs_file_09.png differ diff --git a/docs/sbs/zh/sbs/media/QuecPytgon_sbs_file_10.png b/docs/sbs/zh/sbs/media/QuecPytgon_sbs_file_10.png new file mode 100644 index 0000000000000000000000000000000000000000..5da624e4b5e8304f9e82d3e756fdefec5373d471 Binary files /dev/null and b/docs/sbs/zh/sbs/media/QuecPytgon_sbs_file_10.png differ