library ieee;
    use std.textio.all;
    use ieee.std_logic_textio.all;
    use ieee.std_logic_1164.all;
    use ieee.std_logic_unsigned.all;
entity testin is
end entity testin;
architecture rtl of testin is
    begin
        process is
            file file_out1,filein: text; --定义text类型的文件句柄;
            variable fstatus1,fstatus2:FILE_OPEN_STATUS;   --定义文件状态指示变量;
            variable count:integer:=5;           --定义integer型写入数据;
            variable stringdata:string(5 downto 1):="whwnh";--定义string型写入数据;
            variable vectordata:bit_vector(5 downto 0):="001000";--定义bit_vector型的写入数据;
            variable value:std_logic_vector(3 downto 0):="1111";--定义std_logic_vector型的写入数据;
            variable BUF,BUF1:LINE;
            begin
                    file_open(fstatus1,file_out1,"datain.txt",write_mode);  --打开文件“datain.txt"
                    write(file_out1,string'("the first parameter is="));    --通过write()函数直接向文件中写入对应类型数据。
                    readline(input,buf);                                    --从控制台输入字符串输入文件;
                    write(buf,count);
                    writeline(file_out1,buf);                                      --向文件中输入integer类型
                    wait for 20 ns;
                    write(buf,string'("the second parameter is="));
                    write(buf,value);
                    writeline(file_out1,buf);   
                    wait for 20 ns;                                     --向文件中输入std_logic_vector类型数据;
                    write(buf,string'("the third parameter is="));
                    write(buf,vectordata);
                    writeline(file_out1,buf); 
                    wait for 20 ns;                                  --向文件中输入bit_vector类型数据;
                    write(buf,string'("the forth parameter is="));
                    write(buf,stringdata);                                  --向文件中输入string类型数据。
                    writeline(file_out1,buf);
                    write(file_out1,string'("end of file"));
                    file_close(file_out1); 
                    wait for 100 ns;                                --关闭文件
                    file_open(fstatus1,file_out1,"datain.txt",read_mode);  --以读取模式打开文件
                    readline(file_out1,buf);                               --读取文件数据并输出到控制台界面。
                    writeline(output,buf);               
                    file_close(file_out1);
                    wait for 100 ns;
                    file_open(fstatus1,filein,"STD_INPUT",read_mode);      --以控制台作为文件输入
                    file_open(fstatus2,file_out1,"STD_OUTPUT",write_mode);  --以控制台作为文件输出
                    readline(filein,BUF);
                    writeline(file_out1,BUF);
         wait;  
        end process;
    end rtl;

利用VHDL读写file文件的更多相关文章

  1. (数据科学学习手札63)利用pandas读写HDF5文件

    一.简介 HDF5(Hierarchical Data Formal)是用于存储大规模数值数据的较为理想的存储格式,文件后缀名为h5,存储读取速度非常快,且可在文件内部按照明确的层次存储数据,同一个H ...

  2. 利用java读写Excel文件

    一.读取Excel文件内容 java 代码 public static String readExcel(File file){ StringBuffer sb = new StringBuffer( ...

  3. 利用Lua读写本地文件

    缘由 今天在使用Lua编写脚本时,需要用到读写文件的操作,很久没有使用Lua了,特写下此文来备忘一下. 简介 Lua对文件的操作与C对文件的操作基本一致,不管是参数还是方法.Lua中可以直接通过全局方 ...

  4. C# WPF 利用NPOI读写Excel文件

    https://blog.csdn.net/a312024054/article/details/70139172 [各种样式] https://www.cnblogs.com/xwgli/archi ...

  5. c# 利用动态库DllImport("kernel32")读写ini文件(提供Dmo下载)

    c# 利用动态库DllImport("kernel32")读写ini文件 自从读了设计模式,真的会改变一个程序员的习惯.我觉得嘛,经验也可以从一个人的习惯看得出来,看他的代码编写习 ...

  6. 利用JavaCSV API来读写csv文件

    http://blog.csdn.net/loongshawn/article/details/53423121 http://javacsv.sourceforge.net/ 转载请注明来源-作者@ ...

  7. java中的File文件读写操作

    之前有好几次碰到文件操作方面的问题,大都由于时间太赶而没有好好花时间去细致的研究研究.每次都是在百度或者博客或者论坛里面參照着大牛们写的步骤照搬过来,之后再次碰到又忘记了.刚好今天比較清闲.于是就在网 ...

  8. 30天C#基础巩固------集合,File(文件操作 ),Encoding处理字符集

    一:泛型    关于泛型我自己也不是很好的理解,但是具体的运用还是可以的,可以这样的理解,我们定义一个数组,但是不知道将来它是保存什么类型的值,很是矛盾,这个时候泛型就出现了,它可以解决这个场景,li ...

  9. 利用Delphi的File Of Type创建并管理属于你自己的数据库

    http://www.360doc.com/content/16/1128/19/28222077_610249962.shtml 利用Delphi的File Of Type创建并管理属于你自己的数据 ...

随机推荐

  1. java中,Date数据类型和JSONObject数据类型之间的转换

    import java.text.SimpleDateFormat;import java.util.Date;import net.sf.json.JSONObject; public class ...

  2. 多线程12_张孝祥 java5读写锁技术的妙用

    package locks; import java.util.Random; import java.util.concurrent.locks.ReentrantReadWriteLock; /* ...

  3. 华为S5700基础配置----备份和恢复配置文件

    一:备份配置文件 设备作为FTP服务器,用户PC作为FTP客户端 # 配置设备的FTP功能及FTP用户信息. <HUAWEI> system-view [HUAWEI] ftp serve ...

  4. GitBook是一个命令行工具(Node.js库),我们可以借用该工具使用Github/Git和Markdown来制作精美的图书,但它并不是一本关于Git的教程哟。

    GitBook是一个命令行工具(Node.js库),我们可以借用该工具使用Github/Git和Markdown来制作精美的图书,但它并不是一本关于Git的教程哟. 支持输出多种格式 GitBook支 ...

  5. unity3d在Android端读取修改Json数据

    首先我们需要下载一个文件 LitJson.dll(下载链接 ps: 是用自己的百度云盘下载的如果链接过时,请留言或自行下载, 密码: 5foa) 另外,由于我们要发布到安卓手机上,所以需要配置Jar和 ...

  6. WindowsForm 计算器

             计算器  可以分一下类 数字键 + - * / % =和撤销 归零C最简单 下面看一下计算器具体的代码 using System; using System.Collections. ...

  7. linux下socket编程-TCP

    网络字节序 发送主机通常将发送缓冲区中的数据按内存地址从低到高的顺序发出,接收主机把从网络上接到的字节依次保存在接收缓冲区中,也是按内存地址从低到高的顺序保存,因此,网络数据流的地址应这样规定:先发出 ...

  8. Lucene学习之CURD

    创建索引 Lucene在进行创建索引时,根据前面一篇博客,已经讲完了大体的流程,这里再简单说下: Directory directory = FSDirectory.open("/tmp/t ...

  9. oracle group by 使用

    SELECT supplier_id, max(evidence_date) AS evidence_date,max(TD_SUPPLIER_EVIDENCE_INFO_ID) AS TD_SUPP ...

  10. 2-4. BCD解密(10)

    BCD数是用一个字节来表达两位十进制的数,每四个比特表示一位.所以如果一个BCD数的十六进制是0x12,它表达的就是十进制的12.但是小明没学过BCD,把所有的BCD数都当作二进制数转换成十进制输出了 ...