首先强调
- 必须创建宏文件,如果对宏文件没有概念,看下面视频,对文件读写将有系统认识。
- 不创建宏文件,直接复制读取命令流不能实现读取目的。(可在命令流里面创建宏文件)
- 宏文件的名字是个很玄幻的问题。。。
- 有时无法生成文件,可以试试重启ANSYS,我也不知道为啥。。。
ANSYS APDL系列教程15--文件写入与写出数据格式_哔哩哔哩-水哥ANSYS https://www.bilibili.com/video/av54393845/
对视频内容总结如下:
一、文件读取
txt文件内容(6行5列)data.txt
读取方法
*create,ddx518,mac *dim,AA,array,6,5 *vread,AA(1,1),data,txt,,jik,5,6 (5f3.0) *end ddx518
JIK表示存到数组的格式为:把读到的数据按行填充,每行数目为5
注:如果(5f3.0),改为(4f3.0),则读取到的内容为11 12 13 14 16 17 18 19 21 ...
一维数据读取
数据内容
读取命令流
*create,ddx518,mac *dim,AA,array,10,1 *vread,AA(1,1),data_10,txt,,jik,1,10 (1f20.0) *end ddx518
二、文件写出
注意:
1.同名宏文件会覆盖上次的宏文件
*Create,datawrite,mac !创建宏文件 *cfopen,filename,txt *do,i,1,100 aa = variable(i) *vwrite,aa (5f3.0) *enddo *cfclose *end !创建宏文件结束 Dataread !运行宏文件
例子:二维数组的写出 *vwrite
finish /clear /prep7 *dim,nodenum,array,20,5 !定义20*5的数组并赋值 *do,i,1,20 *do,j,1,5 nodenum(i,j) = i+j *enddo *enddo
*create,dw14,mac ! 创建宏文件 ,注意文件名不能过长
*cfopen,ddx,txt
*vwrite,nodeInfo(1,1),nodeInfo(1,2),nodeInfo(1,3),nodeInfo(1,4),nodeInfo(1,5) ! 视频内代码是不对的,改成这样是对的,但不知道为啥。
(f10.0,4f22.15)
*cfclose
*end !结束宏文件的创建
dw14 !运行宏文件