这个可以用dd命令实现
例如 dd if=/dev/sda1 of=cc.txt bs=1M count=3 seek=3
解释: 从sda1读取,生成文件cc.txt, 块大小为1M,数量为3块(1M*3=3M,所有生成文件大小为3M),seek=3意思是跳过sda1的前三个block(因为bs=1M,所以跳过前3M的内容)
希望能帮助楼主。
fread和fwrite函数参数1和8写反了,请查阅这两个函数的定义。int nCount = fread(mingwen1,1,8,f) //返回nCount实际读取到的字符个数,每一次能读满就是8否则按读到的数来
fwrite(mingwen1,1,nCount,f) //要写入实际读取的长度,而不是统一的8,至于你密文长度是多少就得你自己计算了,因为不知道你加密算法有没有增加原来字符串长度。
你用如下代码覆盖你源代码中的类似部分试试:
while(int nCount = fread(mingwen1,1,8,f))
{
//int se = CDes(mingwen1,miwen,mm,0)//暂时屏蔽,要加密请加上这句并把下一句变量改为miwen
fwrite(mingwen1,1,nCount,g)
}
同时在while循环之前,和每一次fwrite之后应该使用
memset(mingwen1,0,8)
memset(miwen,0,8)
将mingwen1和miwen置0,不然最后一次虽然没有读取满,但是会保留前一次的字符在里面。
private static String driver =nullprivate static String url = null
private static String user = null
private static String password = null
private static BasicDataSource ds
static{
//读取程序外的.properties 文件
//需要.properties文件的包路径
Properties props = new Properties()
try {
String path ="db.properties"
props.load(
DBUtils.class.getResourceAsStream(path)
)
//properties对象.getProperty("字符串")
driver=props.getProperty("driver")
url=props.getProperty("url")
user=props.getProperty("user")
password=props.getProperty("password")
ds = new BasicDataSource()
ds.setDriverClassName(driver)
ds.setUrl(url)
ds.setUsername(user)
ds.setPassword(password)
Class.forName(driver)
} catch (Exception e) {
e.printStackTrace()
}
}
这是一个JDBC读取配置文件连接数据库的示例代码,供参考!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)