题意理解:希望批量提取所有文件(注:特定某类文件),并批量建立超链接,当发给对方时,对方可以直接打开文件(注:双方对于文件路径均有共享权)
解法(该解法针对批量提取某类特定文件或所有文件,并批量建立超链接):
一. 批量提取文件
方法一. 微软WIN 8或者WIN 10 *** 作系统,可以借助自带功能实现批量获取文件夹内文件路径:选择全部文件或某类文件,同时按住shift和鼠标右键,会出现“复制为路径”的选项。
WIN 8或者WIN 10 *** 作系统获取文件路径
然后将路径粘贴到Excel中:
路径粘贴到Excel中
方法二. 没有“复制至路径”功能的微软电脑 *** 作系统,可以通过文件内容为“dir *.xlsx/s/on/b>文件路径dirxlsxsonb.txt”的.bat文件" highlight="true">bat文件获得,步骤如下:
1. 在欲得到宏乎文件路径的文件夹内新建一个txt文件
2. 在该文件内输入内容为“dir /s/on/b>获取路径.txt”
3. 该文件保存后改后缀为“.bat”
4. 运行该 bat 文件
5. 在“xlsx文件路径.txt”中复制所有内容
6. 粘贴在 Excel 文件中
7. 以“简历表”所有文件为例(若是“dir”改成“dir *.xlsx”则提取所判绝历有 xlsx文件的路径)
● 在“简历表”文件夹内新建一个TXT文档;
● 输入内容:“dir /s/on/b>获取路径.txt”;
● 保存后关闭,将txt文档后缀名改为.bat
● 双击生成的bat文件运行,将得到一个命名为“获取路径.txt”文件,打开后,可看到文件列表路径,复制到Excel中即可。
“简历表”文件夹内所有文件
二. 批量超链接
1. 在粘贴了文件路径的 Excel 文件内,在含文件路径的文件名单元格的相邻单元格内键入公式“=Hyperlink(Link-location,[Friendly-name])”
2. 以“简历表”的路径为例(注:公式中的“[Friendly-name]”即“A2”可以省去)
批量超链接公式
三. 针对题述要求的解法
1. 从图片上看,题述文件所在电脑 *** 作系统应该是 win7,所以可以用上述“批量提取文件”的“方法一”,即:
2. 在“A0101板材类”文件夹下,选取所有 .xlsx 文件,同时按住shift和鼠标右键,当出现“复制为路径”的选项时,鼠标左键点击该选项掘搜。
3. 在 Excel 文件内粘贴后,在其右边相邻的单元格内,键入公式“=Hyperlink(Link-location,[Friendly-name])”并下拉
在Windows中,“D:\”表示D盘,“D:”表示目录
还可以查找特定后缀的文件:
如: dir(['fk\','*.jpg']) 表示查找 fk文件夹下后缀为 ' .jpg' 的文件
若 fk 目录下存在后缀为'.jpg' 的文件,则返回文件名:
1260500466587.jpg 1260500472025.jpg 8673601d.jpg
否则返回: fk.\*.jpg not found.
其中dirname是要查找的路径的名字,路径在matlab的搜索路径内时,没有必要输入全名,只输入最后或最后两级就够了。
fopen ('filename', 'mode')
mode格式有:
‘r’:只读方式打开文件(默认的方式),该文件必须已存在。
‘r+’:读写方式打开文件,打开后先读后写。该文件必须已存在。
‘w’:打开后写入数据。该文件已存在则更新;不存在则创建。
‘w+’:读写方式打开文件。先读后写。该文件已存在则更新;不存在则创建。
‘a’:在打开的文件末端添加数据。文件不存在则创建。
‘a+’:打开文件后,先读入数据再添加数据。文件不存在则创建。 如果rt表示该文件以文本方式打开,如果添加的是“b”,则以二进制格式打开,这也是fopen函数默认的打开方式。
Fopen函数两个返数升回值:
fclose(f)
f为打开文件的标志,若fclose函数返回值为0,则表示成功关闭f标志的文件;若返回值为–1,则表示无段迟法成功关闭该文件。
若要一次关闭打开的所有文件,可以使用下面的命令:fclose all
MATLAB自带的MAT文件为二进制文件,但为了便于和外部程序进行交换以及方便查看文件中的数据,也常常采用文本数据格式(数据采用ASCII码格式,可以表示字母和数字字符)与外界进行数据交换。
函数 | csvread| dlmread| fscanf| load| textread|
-|-|-
数 据 类 型| 数值数据| 数值数据| 字母和数值| 数值数据| 字母和数值|
分 隔 符| 仅cooma| 任何字符| 任何字符| 仅space| 任何字符|
返 回 值| 1| 1| 1| 1| 多返回值
如: A=load('my_data.txt')
如果想把4列数据全部读取出放在4个变量中,则使用如下命令:
>>[name gra grades answer]=textread('my_exam.dat','%s %s %f %s')
函数| csvwrite| diary| dlmwrite| fprintf| save
-|-|-
数 据 类 型| 数值数据| 数值数据或单元阵列| 数值数据| 字母和握毕李数值数据| 数值数据
分 隔 符| 逗号| 空格| 任何字符| 任何字符| 制表符或空格符
存写有分隔符的ASCII码数据文件 若要将当前的MATLAB工作空间的一个或多个变量写到一个有分隔符的ASCII码文件中,可以使用save命令或dlmwrite函数。在默认情况下,save命令是以 MAT 格式存写数据的。
作用 | 标志 | 例子
-|-
左对齐 | ' - ' | %-5.2f
打印符号字符(+或 - ) | '+' | %+5.2f
插入空格| ' ' | % 5.2f
垫零 | '0' | %05.2f
对%o, %x, %X, 打印 0,0x,0X的前缀。
对%f, %e, %E, 打印小数点,即使是0。
对%g, %G,不删除或尾部的零或小数点。 | '#' | %#5.0f
例: 创建一个2×2的魔方矩阵,然后打开一文件,写入数据。
fseekfrewind
设定指针位置重设指针到文件起始位置
ftellfeof
获得指针位置测试指针是否在文件结束位置
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)