SystemVerilog/Verilog的testbench中文件的写入和读取操作

在Testbench中很可能需要文件的读写操作,在可综合的设计中也可能会用到文件写入。SystemVerilog/Verilog提供的文件写入读取方法并不多,主要有两类。

第一类是writememb/writememh/readmemb/readmemh,第二类是$fscanf/$fwrite。第一类用法简单,但是功能弱,文件读取也不支持多维数组;第二类用法复杂一点,功能相对强大,配合循环语句可以处理多维数组。

1. writemem[b|h]/readmem[b|h]

writemem[b|h]主要有以下用法:

(1)$readmemb("<数据文件名>",<存储器名>);

(2)$readmemb("<数据文件名>",<存储器名>,<起始地址>);

(3)$readmemb("<数据文件名>",<存储器名>,<起始地址>,<终止地址>);

其中起始地址和终止地址都是相对于“存储器名”指定的数据而言,而不是指写入文件时的位置。参考以下代码。

parameter WIDTH         = 8;
parameter INDEX0        = 16;
parameter FILE_PATH_B   = "E:/FPGA/PRACTICE/FileReadWrite/files/file_b.txt";
parameter FILE_PATH_H   = "E:/FPGA/PRACTICE/FileReadWrite/files/file_h.txt";
parameter FILE_PATH_F   = "E:/FPGA/PRACTICE/FileReadWrite/files/file_f.txt";
parameter FILE_PATH_HALF= "E:/FPGA/PRACTICE/FileReadWrite/files/file_half.txt";

reg     [WIDTH-1: 0]    dat0[INDEX0-1: 0], dat1[INDEX0-1: 0];
wire    [WIDTH-1: 0]    dat1_comp[INDEX0-1: 0];
reg     [WIDTH-1: 0]    dat0_read[INDEX0-1: 0];
integer i, j;
integer fid;

initial begin
    for( i=0; i

$writememb( FILE_PATH_B, dat0, 0 )将以二进制的格式写入数据,如下图所示。每个数据占据一行。注意,使用writememb写入的文件也要通过readmemb读出,否则数据可能是错误的

SystemVerilog/Verilog的testbench中文件的写入和读取操作_第1张图片

$writememb( FILE_PATH_B, dat0, 0 )将以二进制的格式写入数据。

$writememh( FILE_PATH_HALF, dat0, INDEX0/2 )将从dat0[8]开始按照十六进制写入数据,如下图所示。

SystemVerilog/Verilog的testbench中文件的写入和读取操作_第2张图片

$readmemb和$reamdmemh可以从文件中读取数据,其用法如下。

(1)$readmem[b|h]("<数据文件名>",<存储器名>);

(2)$readmem[b|h]("<数据文件名>",<存储器名>,<起始地址>);

(3)$readmem[b|h]("<数据文件名>",<存储器名>,<起始地址>,<终止地址>);

其中起始地址是指从数据文件中读取的数据将从“存储器名”的指定地址开始填充,参考上文程序中的以下语句。

$readmemh( FILE_PATH_H, dat0_read, INDEX0/2 );

for( i=0; i

从FILE_PATH_H中读取的数据将从dat0_read的地址INDEX0/2的位置开始填充,而dat0_read中未初始化且未填充的数据为“x”,如下图所示。

注意,readmem[b|h]是将数据放在存储器中,所以dat0_read应该定义为reg型,而不是wire

此外,readmem[b|h]是不能填充二维数据的。比如reg [M:N] dat[X:Y]是可以使用readmem[b|h]填充的,而reg [M:N] dat[X:Y] [A:B]是不可以用作readmem[b|h]的操作对象的。

2. $fwrite和$fscanf

2.1 基本用法

这两个系统函数的功能更强大,参考以下代码。

initial begin
    for( i=0; i
                    
                    
  • FPGA实战1-流水灯实验verilog 马志高 FPGAfpga开发
    1.实验要求(1)设计一个流水灯的实验,实现12位流水灯的依次点亮,(2)流水灯的流转时间是(500ms/2Hz),(3)系统时钟位50MHz,(4)定义12个寄存器ledtemp保存12个状态,(5)寄存器的初始值位12'b0000_0000_0001,(6)当移位到12‘b1000_0000_0000时,ledtemp的值回到12'b0000_0000_0001,2.设计代码//coding/
  • PXI PXIe控制器:4Link架构+16GB带宽,兼容主流机箱,设计文件涵盖原理图、PCB和FPGA源码,实现可直接制板,高带宽PXI PXIe控制器,4Link架构,兼容主流机箱,提供设计文件、 suRQWcVNi fpga开发程序人生
    PXIPXIe控制器4Link架构16GB带宽兼容主流PXIe机箱设计文件原理图&PCBFPGA源码可直接制板ID:8245999662600997605浪里个浪里个浪001PXI和PXIe控制器是一种用于测量和自动化测试的高性能仪器。它们采用了4Link架构,可以提供高达16GB的数据传输带宽。同时,这些控制器还兼容主流的PXIe机箱,具有很好的兼容性。在设计文件方面,PXI和PXIe控制器提供
  • PXI/PXIe控制器 4Link架构 16GB带宽 兼容主流PXIe机箱 设计文件 原理图&PCB FPGA源码 可直 FjtKvOwLaGa fpga开发架构
    PXI/PXIe控制器4Link架构16GB带宽兼容主流PXIe机箱设计文件!!!原理图&PCBFPGA源码可直接制板PXI和PXIe技术在现代仪器仪表领域中扮演着重要角色。其中,PXI(PCIeXtensionsforInstrumentation)是一种基于PCI总线的测试和测量平台,而PXIe则是对PXI进行扩展和增强的新一代标准。在PXI和PXIe平台中,控制器是关键组件之一,而PXIPX
  • FPGA基带平台射频数据处理装置及验证系统设计与方法 BE东欲
    本文还有配套的精品资源,点击获取简介:FPGA在射频数据处理领域拥有灵活性和高性能,广泛用于通信、雷达、卫星导航等。本资料包重点介绍FPGA基带平台在数字信号处理中的应用,包括调制解调、滤波和FFT等任务。涵盖射频数据处理装置结构,验证系统设计和实施,以及相关工具的使用方法。为学习者提供实践经验和理论知识,助力开发高效可靠的通信系统。1.FPGA在射频数据处理中的应用数字信号处理(DSP)是现代电
  • 基于FPGA的3U机箱温度采集板PT100,应用于轨道交通/电力储能等 深圳信迈主板定制专家 轨道交通NXP+FPGAX86+FPGAfpga开发arm开发架构人工智能
    板卡简介:本板为温度采集板(PT100),对目标进行测温,然后将温度转换成处理器可识别的电流信号。性能规格:电源:DC5V,DC±15V4线制PT100:7路(标称测温范围-50℃~200℃,对应调理后电流4~20mA,精度±0.5℃)3线制PT100:1路(标称测温范围-50℃~200℃,对应调理后电流4~20mA,精度±0.5℃)尺寸:220mm*100mm*1.6mm重量:0.155kg工作
  • FPGA仿真过程中宏定义的修改 学习永无止境@ fpga开发
    在仿真过程中,经常会有一些时间变量,比如1分钟,10分钟等,这种级别的仿真很费时间,因此,人们往往将时间参数修改,利用秒级别进行仿真,仿真完成后,再改回分钟级别。下面提供一种宏定义的方式,方便实际过程中和仿真过程中时间参数修改。`defineSIMULATION`ifdefSIMULATIONlocalparamTIMER_CNT_1S=30'd1_000-1'b1;//1s计数的最大值local
  • FPGA设计中衍生时钟的定义及约束 学习永无止境@ FPGA设计fpga开发fpga时钟约束
    衍生时钟的定义:衍生时钟主要是指由已有的主时钟进行分频、倍频或相移而产生出来的时钟信号,如由时钟管理单元(MMCM等)或一些设计逻辑所驱动产生的时钟信号。衍生时钟的定义取决于主时钟的特性,衍生时钟约束必须指定时钟源,这个时钟源可以是一个已经约束好的主时钟或者另一个衍生时钟,衍生时钟并不直接定义频率、占空比等参数,而是定义其与时钟源的相对关系,如分频系数、倍频系数、相移差值、占空比差值等。因此,在做
  • 基于MPC8377的MCPU 3U机箱CPCI板卡 ARM+FPGA+AI工业主板定制专家 轨道交通linuxCodesysRK3568PLCRK3588
    板卡简介:本板为主控板(MCPU),主要负责逻辑控制、数据的处理、板卡的通信管理、系统安全保护切换以及数据存储等功能。性能规格:电源:DC5VCPU:MPC8377核数:单核32位主频:667MHzMCU:MK60DN512VLL10FPGA:XC6SLX16-2FT256I存储:DDR2256Mb(CPU)PROM16MB(FPGA)NVSRAM512KB(CPU和FPGA共享)NORFLASH
  • FPGA时序约束的概念和意义 学习永无止境@ FPGA设计fpgafpga开发开发语言
    设计人员通过GUI输入时序约束,或者手动输入时序约束的方式告诉Vivado工具关于时钟或者IO接口的时序信息,用于协助Vivado工具在布局布线时尽可能的满足设计人员的时序要求,最大程度的保证Vivado工具每次生成的bit文件都具备良好的稳定性和适应性。
  • BRAM消耗与FIFO的关系:有效利用FPGA资源的策略 kanhao100 HLSfpga开发
    BRAM消耗与FIFO的关系:有效利用FPGA资源的策略引言在FPGA设计中,BRAM(BlockRAM)是用于存储数据的重要资源。有效管理和利用BRAM对于实现高性能数字系统至关重要。特别是对于需要频繁读写数据的应用,FIFO(先进先出)缓冲区的使用与BRAM的消耗之间存在着密切的关系。本文将探讨BRAM的消耗、FIFO的特性,以及如何正确利用BRAM以优化设计效率。1.BRAM的基本概念1.1
  • 基于FPGA的DDS连续FFT 仿真验证 toonyhe FPGA开发fpga开发DDSFFTIFFT
    基于FPGA的DDS连续FFT仿真验证1摘要本文聚焦AMDLogiCOREIPFastFourierTransform(FFT)核心,深入剖析其在FPGA设计中的应用。该FFT核心基于Cooley-Tukey算法,具备丰富特性,如支持多种数据精度、算术类型及灵活的运行时配置。文中详细介绍了其架构选项、端口设计、理论运算原理,以及在不同场景下的动态范围特性。同时,结合VivadoDesignSuit
  • 无矩阵乘法LLM:效率与性能双突破 XianxinMao 人工智能矩阵人工智能线性代数
    标题:无矩阵乘法LLM:效率与性能双突破文章信息摘要:无矩阵乘法的LLMs通过创新技术替代传统矩阵乘法操作,显著降低了计算成本,减少了对GPU的依赖。这种模型在内存使用和延迟方面表现优异,尤其在大规模模型上效率显著提升。例如,13B参数的模型仅需4.19GBGPU内存,延迟低至695.48ms,远优于传统模型。此外,基于FPGA的硬件优化进一步提升了性能,1.3B参数模型功耗仅为13W,达到人类阅
  • 高云FPGA的管脚约束文件的复制 在岸上走的鱼 fpga开发嵌入式硬件硬件架构
    问:Gowin里面能不能直接拷贝一个管脚约束文件进去用?答:可以直接拷贝,但是拷贝前后两个工程对应的芯片必须要是同一个芯片拷贝方法:第一步:按照被拷贝约束文件对应的芯片新建一个工程,然后将原工程文件夹“src”里面的“.cst”文件拷到新建工程的相同目录下,第二步:回到新建工程目录下,点击芯片名右击,如下图:将“.V”文件和“.cst”文件一同加入这个工程,最后综合,布局布线就可以了,注意:有时拷
  • FPGA——DDS原理及代码实现
    FPGA——DDS原理及代码实现一、DDS各参数意义如图,一个量化的32点的正弦波,也就是说一个ROM里存了32个这样的数据,每次读出一个数据要1ms,分别读出1,2,3...30,31,32,共32个点,读取完整的正弦波需要1ms*32=32ms的时间该正弦波参数为>周期T=1ms*32=32ms,>频率为f=1/T=1/(1ms*(32/1))在读出一个数据时间不变(1ms)的情况下,想要让读
  • AXI总线之相关应用 逾越TAO fpga开发硬件工程笔记
    AXI总线作为现代SoC设计的核心互连协议,其应用场景极为广泛,覆盖移动设备、AI加速器、FPGA、存储控制器等多个领域。以下是AXI在不同应用中的关键角色及具体实现案例:一、移动处理器与SoC应用场景:智能手机、平板电脑的SoC(如高通骁龙、苹果A系列、华为麒麟)中,AXI用于连接多核CPU、GPU、ISP(图像信号处理器)、DDR控制器等模块。典型案例:ARMCortex-A系列多核集群:AX
  • 【FPGA教程案例31】通信案例1——基于FPGA的ASK调制信号产生 fpga和matlab ★教程2:fpga入门100例fpga开发FPGA教程ASK调制verilog
    FPGA教程目录MATLAB教程目录---------------------------------------------------------------------------------------目录1.软件版本2.ASK调制原理3.ASK调制过程的FPGA实现4.操作步骤与仿真结论5.参考文献1.软件版本vivado2019.22.ASK调制原理幅度键控(Amplitude-Shi
  • 【教程4>第2章>第30节】本章整体思维导图与学习总结 fpga和matlab #第3章·通信—高阶调制解调FPGA教程4学习总结高阶调制解调
    教程4.目录.目录1.本章节目录2.本章节思维导图3.本章节学习案例与实际应用欢迎订阅FPGA/MATLAB/Simulink系列教程《★教程1:matlab入门100例》《★教程2:fpga入门100例》《★教程3:simulink入
  • 算力未来演进与多场景创新 智能计算研究中心 其他
    内容概要算力作为数字经济的核心生产力,其技术架构与应用场景正经历多维突破。从技术架构层面来看,异构计算通过整合CPU、GPU、FPGA等多元芯片实现性能跃升,边缘计算则借助分布式节点降低时延并提升响应效率,而量子计算在特定领域的指数级加速潜力已进入验证阶段。在应用场景维度,工业互联网通过实时数据分析优化产线效率,智能安防依托视频流结构化处理增强预警能力,元宇宙则依赖高密度渲染与低延迟传输构建沉浸式
  • 单端口和双单口RAM的实现 wangn1633 Verilogverilog
    单端口和双单口RAM的verilog实现概念:1单端口:读写数据共用一个地址线,一个时钟沿只能进行读或者写;2伪双端口:写数据和读数据有自己的地址、时钟、读写使能信号;也就是一组端口只能写,一组端口只能读。(读写数据也可共用一个clk,为同步伪双端口ram)3真双端口:一组端口可读可写,另一组端口也可读可写。(若这两组端口共用一个clk,为同步真双端口ram。若每组有每组的clk,为异步真双端口r
  • FPGA中级项目3——IP核之时钟管理单元 霖00 fpga开发经验分享嵌入式硬件fpga网络时序数据库
    FPGA中级项目3——IP核之时钟管理单元时钟还需要管理?什么是时钟管理单元?我们常熟知FPGA本身有晶振单元,源源不断的提供的50Mhz的频率波。但是这样往往无法满足一些设计需求。使用Verilog代码设计倍频分频等又不可避免的出现毛刺等其他状况,且提升了代码复杂度。因此在FPGA设计中,时钟管理单元(ClockManagementUnit,CMU)IP核是关键组件,用于生成、调整和分配系统时钟
  • 【从零开始学习计算机科学】数字逻辑(四)数字系统设计 贫苦游商 学习数字逻辑verilog数字系统HDL数字电路FPGA
    【从零开始学习计算机科学】数字逻辑(四)数字系统设计数字系统设计硬件描述语言HDL(HardwareDescriptionLanguage)VerilogHDL的起源与发展HDL软核、固核和硬核的重用HDL的应用数字系统设计实现数字系统设计一个数字集成电路的可以从不同的层次(系统级、算法级、寄存器传输级、门级、开关级)以及不同的领域(行为领域、结构领域、物理领域)进行描述。三个领域主要含义如下:行
  • 【从零开始学习计算机科学】硬件设计与FPGA原理 贫苦游商 【从零开始学习计算机】硬件设计fpga开发学习数字逻辑verilogHDL硬件设计硬件工程
    硬件设计硬件设计流程在设计硬件电路之前,首先要把大的框架和架构要搞清楚,这要求我们搞清楚要实现什么功能,然后找找有否能实现同样或相似功能的参考电路板(要懂得尽量利用他人的成果,越是有经验的工程师越会懂得借鉴他人的成果)。如果你找到了的参考设计,最好还是先看懂并理解,这一方面能提高我们的电路理解能力,而且能避免设计中的错误。在开始做硬件设计前,根据自己的项目需求,可以去找能够满足硬件功能设计的,有很
  • 【无标题】采集板设计 weixin_42366388 测试工具
    设计包含16片AD9680ADC和XilinxXC7V690FPGA的电路板需要解决高速数据接口、电源管理、时钟同步及PCB布局等关键挑战。**1.系统架构设计**####**核心组件**-**ADC**:16片AD9680(双通道14-bit1GSPS,JESD204B接口)-**FPGA**:XilinxXC7V690T-2FFG1761I(含48个GTX收发器,12.5Gbps/通道)-**
  • html 周华华 html
    js 1,数组的排列 var arr=[1,4,234,43,52,]; for(var x=0;x<arr.length;x++){    for(var y=x-1;y<arr.length;y++){      if(arr[x]<arr[y]){     &
  • 【Struts2 四】Struts2拦截器 bit1129 struts2拦截器
    Struts2框架是基于拦截器实现的,可以对某个Action进行拦截,然后某些逻辑处理,拦截器相当于AOP里面的环绕通知,即在Action方法的执行之前和之后根据需要添加相应的逻辑。事实上,即使struts.xml没有任何关于拦截器的配置,Struts2也会为我们添加一组默认的拦截器,最常见的是,请求参数自动绑定到Action对应的字段上。   Struts2中自定义拦截器的步骤是:
  • make:cc 命令未找到解决方法 daizj linux命令未知make cc
    安装rz sz程序时,报下面错误:   [root@slave2 src]# make posix cc   -O -DPOSIX -DMD=2 rz.c -o rz make: cc:命令未找到 make: *** [posix] 错误 127   系统:centos 6.6 环境:虚拟机   错误原因:系统未安装gcc,这个是由于在安
  • Oracle之Job应用 周凡杨 oracle job
    最近写服务,服务上线后,需要写一个定时执行的SQL脚本,清理并更新数据库表里的数据,应用到了Oracle 的 Job的相关知识。在此总结一下。   一:查看相关job信息    1、相关视图  dba_jobs  all_jobs  user_jobs  dba_jobs_running 包含正在运行
  • 多线程机制 朱辉辉33 多线程
    转至http://blog.csdn.net/lj70024/archive/2010/04/06/5455790.aspx 程序、进程和线程: 程序是一段静态的代码,它是应用程序执行的蓝本。进程是程序的一次动态执行过程,它对应了从代码加载、执行至执行完毕的一个完整过程,这个过程也是进程本身从产生、发展至消亡的过程。线程是比进程更小的单位,一个进程执行过程中可以产生多个线程,每个线程有自身的
  • web报表工具FineReport使用中遇到的常见报错及解决办法(一) 老A不折腾 web报表finereportjava报表报表工具
    FineReport使用中遇到的常见报错及解决办法(一) 这里写点抛砖引玉,希望大家能把自己整理的问题及解决方法晾出来,Mark一下,利人利己。   出现问题先搜一下文档上有没有,再看看度娘有没有,再看看论坛有没有。有报错要看日志。下面简单罗列下常见的问题,大多文档上都有提到的。   1、address pool is full: 含义:地址池满,连接数超过并发数上
  • mysql rpm安装后没有my.cnf 林鹤霄 没有my.cnf
    Linux下用rpm包安装的MySQL是不会安装/etc/my.cnf文件的, 至于为什么没有这个文件而MySQL却也能正常启动和作用,在这儿有两个说法, 第一种说法,my.cnf只是MySQL启动时的一个参数文件,可以没有它,这时MySQL会用内置的默认参数启动, 第二种说法,MySQL在启动时自动使用/usr/share/mysql目录下的my-medium.cnf文件,这种说法仅限于r
  • Kindle Fire HDX root并安装谷歌服务框架之后仍无法登陆谷歌账号的问题 aigo root
    原文:http://kindlefireforkid.com/how-to-setup-a-google-account-on-amazon-fire-tablet/   Step 4: Run ADB command from your PC   On the PC, you need install Amazon Fire ADB driver and instal
  • javascript 中var提升的典型实例 alxw4616 JavaScript
    // 刚刚在书上看到的一个小问题,很有意思.大家一起思考下吧 myname = 'global'; var fn = function () { console.log(myname); // undefined var myname = 'local'; console.log(myname); // local }; fn() // 上述代码实际上等同于以下代码 m
  • 定时器和获取时间的使用 百合不是茶 时间的转换定时器
    定时器:定时创建任务在游戏设计的时候用的比较多   Timer();定时器 TImerTask();Timer的子类  由 Timer 安排为一次执行或重复执行的任务。       定时器类Timer在java.util包中。使用时,先实例化,然后使用实例的schedule(TimerTask task, long delay)方法,设定
  • JDK1.5 Queue bijian1013 javathreadjava多线程Queue
    JDK1.5 Queue LinkedList: LinkedList不是同步的。如果多个线程同时访问列表,而其中至少一个线程从结构上修改了该列表,则它必须 保持外部同步。(结构修改指添加或删除一个或多个元素的任何操作;仅设置元素的值不是结构修改。)这一般通过对自然封装该列表的对象进行同步操作来完成。如果不存在这样的对象,则应该使用 Collections.synchronizedList 方
  • http认证原理和https bijian1013 httphttps
    一.基础介绍         在URL前加https://前缀表明是用SSL加密的。 你的电脑与服务器之间收发的信息传输将更加安全。         Web服务器启用SSL需要获得一个服务器证书并将该证书与要使用SSL的服务器绑定。 http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后
  • 【Java范型五】范型继承 bit1129 java
    定义如下一个抽象的范型类,其中定义了两个范型参数,T1,T2   package com.tom.lang.generics; public abstract class SuperGenerics<T1, T2> { private T1 t1; private T2 t2; public abstract void doIt(T
  • 【Nginx六】nginx.conf常用指令(Directive) bit1129 Directive
    1. worker_processes    8; 表示Nginx将启动8个工作者进程,通过ps -ef|grep nginx,会发现有8个Nginx Worker Process在运行   nobody 53879 118449 0 Apr22 ? 00:26:15 nginx: worker process
  • lua 遍历Header头部 ronin47 lua header 遍历 
    local headers = ngx.req.get_headers()   ngx.say("headers begin", "<br/>")   ngx.say("Host : ", he
  • java-32.通过交换a,b中的元素,使[序列a元素的和]与[序列b元素的和]之间的差最小(两数组的差最小)。 bylijinnan java
    import java.util.Arrays; public class MinSumASumB { /** * Q32.有两个序列a,b,大小都为n,序列元素的值任意整数,无序. * * 要求:通过交换a,b中的元素,使[序列a元素的和]与[序列b元素的和]之间的差最小。 * 例如: * int[] a = {100,99,98,1,2,3
  • redis 开窍的石头 redis
    在redis的redis.conf配置文件中找到# requirepass foobared 把它替换成requirepass 12356789 后边的12356789就是你的密码 打开redis客户端输入config get requirepass 返回 redis 127.0.0.1:6379> config get requirepass 1) "require
  • [JAVA图像与图形]现有的GPU架构支持JAVA语言吗? comsci java语言
          无论是opengl还是cuda,都是建立在C语言体系架构基础上的,在未来,图像图形处理业务快速发展,相关领域市场不断扩大的情况下,我们JAVA语言系统怎么从这么庞大,且还在不断扩大的市场上分到一块蛋糕,是值得每个JAVAER认真思考和行动的事情       
  • 安装ubuntu14.04登录后花屏了怎么办 cuiyadll ubuntu
    这个情况,一般属于显卡驱动问题。 可以先尝试安装显卡的官方闭源驱动。 按键盘三个键:CTRL + ALT  +  F1 进入终端,输入用户名和密码登录终端: 安装amd的显卡驱动 sudo  apt-get  install  fglrx 安装nvidia显卡驱动 sudo  ap
  • SSL 与 数字证书 的基本概念和工作原理 darrenzhu 加密ssl证书密钥签名
    SSL 与 数字证书 的基本概念和工作原理 http://www.linuxde.net/2012/03/8301.html SSL握手协议的目的是或最终结果是让客户端和服务器拥有一个共同的密钥,握手协议本身是基于非对称加密机制的,之后就使用共同的密钥基于对称加密机制进行信息交换。 http://www.ibm.com/developerworks/cn/webspher
  • Ubuntu设置ip的步骤 dcj3sjt126com ubuntu
    在单位的一台机器完全装了Ubuntu Server,但回家只能在XP上VM一个,装的时候网卡是DHCP的,用ifconfig查了一下ip是192.168.92.128,可以ping通。 转载不是错: Ubuntu命令行修改网络配置方法 /etc/network/interfaces打开后里面可设置DHCP或手动设置静态ip。前面auto eth0,让网卡开机自动挂载. 1. 以D
  • php包管理工具推荐 dcj3sjt126com PHPComposer
    http://www.phpcomposer.com/   Composer是 PHP 用来管理依赖(dependency)关系的工具。你可以在自己的项目中声明所依赖的外部工具库(libraries),Composer 会帮你安装这些依赖的库文件。 中文文档  入门指南  下载  安装包列表 Composer 中国镜像
  • Gson使用四(TypeAdapter) eksliang jsongsonGson自定义转换器gsonTypeAdapter
    转载请出自出处:http://eksliang.iteye.com/blog/2175595 一.概述        Gson的TypeAapter可以理解成自定义序列化和返序列化 二、应用场景举例        例如我们通常去注册时(那些外国网站),会让我们输入firstName,lastName,但是转到我们都
  • JQM控件之Navbar和Tabs gundumw100 htmlxmlcss
    在JQM中使用导航栏Navbar是简单的。 只需要将data-role="navbar"赋给div即可: <div data-role="navbar"> <ul> <li><a href="#" class="ui-btn-active&qu
  • 利用归并排序算法对大文件进行排序 iwindyforest java归并排序大文件分治法Merge sort
      归并排序算法介绍,请参照Wikipeida zh.wikipedia.org/wiki/%E5%BD%92%E5%B9%B6%E6%8E%92%E5%BA%8F 基本思想: 大文件分割成行数相等的两个子文件,递归(归并排序)两个子文件,直到递归到分割成的子文件低于限制行数 低于限制行数的子文件直接排序 两个排序好的子文件归并到父文件 直到最后所有排序好的父文件归并到输入
  • iOS UIWebView URL拦截 啸笑天 UIWebView
    本文译者:candeladiao,原文:URL filtering for UIWebView on the iPhone说明:译者在做app开发时,因为页面的javascript文件比较大导致加载速度很慢,所以想把javascript文件打包在app里,当UIWebView需要加载该脚本时就从app本地读取,但UIWebView并不支持加载本地资源。最后从下文中找到了解决方法,第一次翻译,难免有
  • 索引的碎片整理SQL语句 macroli sql
    SET NOCOUNT ON DECLARE @tablename VARCHAR (128) DECLARE @execstr VARCHAR (255) DECLARE @objectid INT DECLARE @indexid INT DECLARE @frag DECIMAL DECLARE @maxfrag DECIMAL --设置最大允许的碎片数量,超过则对索引进行碎片
  • Angularjs同步操作http请求with $promise qiaolevip 每天进步一点点学习永无止境AngularJS纵观千象
    // Define a factory app.factory('profilePromise', ['$q', 'AccountService', function($q, AccountService) { var deferred = $q.defer(); AccountService.getProfile().then(function(res) {
  • hibernate联合查询问题 sxj19881213 sqlHibernateHQL联合查询
    最近在用hibernate做项目,遇到了联合查询的问题,以及联合查询中的N+1问题。 针对无外键关联的联合查询,我做了HQL和SQL的实验,希望能帮助到大家。(我使用的版本是hibernate3.3.2)   1 几个常识:  (1)hql中的几种join查询,只有在外键关联、并且作了相应配置时才能使用。  (2)hql的默认查询策略,在进行联合查询时,会产
  • struts2.xml wuai struts
    <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" "http://struts.apache