创建一个windows应用程序,打开一个标准的对话框,指定读取的文件,然后把改文件显示为二进制,在多行文本中逐个显示文件中的每个字节,每行显示16个字节。
以16进制格式显示该字节的值。
排列整齐,采用FileStream类
2024/2/2 8:49:09 37KB FileStream,二进制
1
一、UNIX文件系统的基本原理    UNIX采用树型目录结构,每个目录表称为一个目录文件。
一个目录文件是由目录项组成的。
每个目录项包含16B,一个辅存磁盘块(512B)包含32个目录项。
在目录项中,第1、2字节为相应文件的外存i节点号,是该文件的内部标识;
后14B为文件名,是该文件的外部标识。
所以,文件目录项记录了文件内、外部标识的对照关系。
根据文件名可以找到辅存i节点号,由此便得到该文件的所有者、存取权、文件数据的地址健在等信息。
UNIX的存储介质以512B为单位划分为块,从0开始直到最大容量并顺序加以编号就成了一个文件卷,也叫文件系统。
本次课程设计是要实现一个简单的模拟UNIX文件系统。
我们在磁盘中申请一个二进制文件模拟UNIX内存,依次初始化建立位示图区,I节点区,数据块区。
二、基本要点思路     1、模拟磁盘块的实现:因为文件系统需要从磁盘中读取数据操作数据,在实现时是使用文件来模拟磁盘,一个文件是一块磁盘,在文件中以划分磁盘块那样划分不同的区域,主要有三个区域:位图区,inode索引节点区,磁盘块区。
位图区我是使用一个512byte的数组存放,inode区和磁盘块区我采用一种自认为比较巧妙的方法,就是存放对象列表,之前说过,在本次实验的所有的结构都使用对象进行存储,而inode节点和磁盘块就是两个重要的数据结构,在初始化时我实例化32个inode对象和512个block对象(至于这些类的具体定义下面会提到),然后将这些对象加入各自对应的对象列表中,在存储时,使用java的对象序列化技术将这个对象数组存到磁盘中。
当使用文件系统时,程序会先从磁盘文件中读取出位图数组,inode对象列表,block对象列表,之后的操作就是通过对这些列表进行修改来实现。
使用这种方法可以减小存储的空间(对象序列话技术)而且不需要在使用时进行无用的查找,只要第一次初始化中将这些对象都读取出来。
    2、界面的实现:在实现这个文件系统时使用了两种方案,一种是直接在java控制台来进行输入输出,因为原本想着UNIX文件系统原本也是使用的命令行语句,所以在控制台上实现也很接近。
后来在老师的建议下又将整个程序重新修改,改成在UI界面上进行输入输出,这样确实界面美观舒服了不少,只不过两者用的技术很不一样,前者主要使用的是系统的输入输出流,后者使用java监听器。
    3、权限的实现:在实现多用户的权限方面,我给文件和文件夹各定义了三级权限1、访问:在文件中是可以查看文件的内容,在文件夹中是可以进入该文件夹。
2、修改:文件中是可以对文件进行编辑,文件夹中是可以在该文件夹中创建新的文件或目录。
3、删除:顾名思义。
文件或文件夹的创建者拥有最高级别的权限,只有拥有最高级权限的用户才可以给其他用户针对该文件或文件夹进行授权和授权操作。
在每次对文件或文件夹进行访问修改删除操作时都会检查当前用户在该文件或文件夹所拥有的权限,只有拥有的权限大于想要实现的权限时才可以进行该操作。
2024/2/1 11:25:27 9KB java UNIX操作系统 课程设计
1
自己编译的Solaris11.3SPARC平台下zabbixagent3.4.15二进制文件,解压即用。
2024/1/28 14:12:27 720KB zabbix solaris
1
Dais-CMH+/CMH机器上调试在该试验中采用五条机器指令:IN(输入)、SUB(二进制减法)、STA(存数)、OUT(输出)、JMP(无条件转移),整体实现二进制数连续相减的功能。
上机调试实现这五种指令功能。
2024/1/26 22:31:23 179KB 组成原理
1
题目描述已知一个只包含0和1的二进制数,长度不大于10,将其转换为十进制并输出。
输入描述输入一个二进制整数n,其长度不大于10输出描述输出转换后的十进制数,占一行样例输入110样例输出6提交代码
2024/1/23 14:27:58 390B 二进转十进
1
提取STL的面片信息,包括三角面片的法向量和三个顶点
2024/1/13 22:58:52 10KB C# STL
1
VB将二进制图片文件转换为Base64字符串文本,可直接将字符串加密,也可直接读取数据库或图片文件加密为Base64字符串!
2024/1/13 12:29:23 5KB 加密 BASE64 图片加密 编程
1
VisualStudio2015,CPUonly,Python3.5:CaffeRelease编译好的二进制文件。
2018-10-19日版本
2024/1/6 15:42:56 72.65MB caffe window
1
微机原理与接口技术楼顺天每章节的课后答案。
微机原理与接口技术楼顺天周佳社编著科学出版社2006年习题解答微机原理与接口技术_楼顺天版_课后题答案因时间紧,习题解答由部分老师提供,还没有经过仔细校对,肯定有不少错误,请各位指正。
另外,习题有多种解法,答案不唯一,仅供参考。
第1章数制与码制1.将下列十进制数转换成二进制数:(1)58;
(2)67.625;(3)5721;解:(1)58D=00111010B(2)67.625D=01000011.1010B(3)5721D=0001011001011001B2.将二进制数变换成十六进制数:(1)10010101B;
(2)1101001011B;
(3)1111111111111101B;
(4)0100000010101B;
(5)01111111B;
(6)010000000001B解:(1)10010101B=95H(2)1101001011B=34BH(3)1111111111111101B=FFFDH(4)0100000010101B=815H(5)01111111B=7FH(6)010000000001B=401H3.将十六进制数变换成二进制数和十进制数:(1)78H;
(2)0A6H;
(3)1000H;
(4)0FFFFH解:(1)78H=120D=01111000B(2)0A6H=166D=10100110B(3)1000H=4096D=0001000000000000H(4)0FFFFH=65535D=1111111111111111B4.将下列十进制数转换成十六进制数:(1)39;
(2)299.34375;
(3)54.5625解:(1)39D=27H(2)299.34375D=12B.58H(3)54.5625D=36.9H5.将下列二进制数转换成十进制数:(1)10110.101B;
(2)10010010.001B;
(3)11010.1
2024/1/6 11:32:35 1MB 课后答案 微机原理 楼顺天
1
Hou等人提出的SBWBAMS(基于加性模型和采样的扫描二进制图像水印)算法。
对打印和扫描过程具有很强的鲁棒性。
但是,由于算法中使用的嵌入强度是人为设置的,因此当嵌入强度较低时,水印信息可能无法正确嵌入到二进制图像中。
首先,分析了正确嵌入水印的最小嵌入强度,然后提出了一种基于自适应嵌入强度的改进二值图像水印算法。
该算法根据图像内容自适应调整嵌入强度,确保嵌入效果良好。
水印信息正确。
实验结果表明,该算法不仅可以正确地嵌入和提取水印信息,而且对打印和扫描过程仍具有很强的鲁棒性。
2024/1/5 18:03:21 483KB Binary Image; Digital Watermarking;
1
共 551 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡