内核读取file文件的方法:

  1. char* file_read(const char * file_path)
  2. {
  3. struct file *file = NULL; //保存打开文件的文件指针变量
  4. struct inode *inode = NULL; //为了获取文件大小用的inode结构变量
  5. char *file_buf; //保存开辟的内存空间的地址的指针变量
  6. loff_t fsize; //保存文件大小的变量
  7. mm_segment_t old_fs; //保存内存边界的变量
  8. static char error[] = "none";
  9. file = filp_open(file_path,O_RDWR,);//打开文件
  10.  
  11. if (IS_ERR(file))
  12. {return error;
  13. }
  14. inode = file->f_dentry->d_inode;//获取文件的大小
  15. fsize = inode->i_size;
  16. old_fs = get_fs();
  17. set_fs(KERNEL_DS);
  18.  
  19. loff_t *pos = &(file->f_pos);
  20. file_buf = (char *)kmalloc(fsize+,GFP_KERNEL);
  21.  
  22. vfs_read(file, file_buf, fsize, pos); //读操作
  23.  
  24. filp_close(file, NULL); //关闭文件
  25.  
  26. set_fs(old_fs);//边界恢复
  27.  
  28. return file_buf;
  29. }

字符串转int的方法:

  1. int string_to_int(const char *str){
  2. int result = ;
  3. int signal = ;
  4. if(((*str>='')&&(*str<=''))||(*str=='-')||(*str=='+')){
  5. if((*str=='-')||(*str=='+')){
  6. if((*str=='-')){
  7. signal = -;
  8. str++;
  9. }
  10. }
  11. }else{
  12. return ;
  13. }
  14. while((*str>='')&&(*str<='')){
  15. result = result* + (*str++ - '');
  16. }
  17. return signal*result;
  18. }

android内核读取file文件的更多相关文章

  1. Android中使用File文件进行数据存储

    Android中使用File文件进行数据存储 上一篇学到使用SharedPerences进行数据存储,接下来学习一下使用File进行存储 我们有时候可以将数据直接以文件的形式保存在设备中, 例如:文本 ...

  2. Android studio 读取properties文件

    System.out.println(Thread.currentThread().getContextClassLoader().getResource("").getPath( ...

  3. android直接读取数据库文件

    public class Dictionary extends Activity  implements OnClickListener, TextWatcher{     private final ...

  4. (文件操作)Android相关的File文件操作

    判断文件是否存在: /** * 判断文件是否存在 * * @param path 文件路径 * @return [参数说明] * @return boolean [返回类型说明] */ public ...

  5. android webview type=file文件上传,安卓端代码

    http://stackoverflow.com/questions/5907369/file-upload-in-webview http://blog.csdn.net/longlingli/ar ...

  6. Android中读取assets文件夹中的子文件夹内容

    文件结构如下:assets/info/info AssetManager am = this.getResources().getAssets(); InputStream input = null; ...

  7. Android 开发自己的网络收音机4——读取XML文件的电台数据

    国内外的电台数据很多,起码有好几百,所以把这些数据都写到代码里面是不实际的.只能写成一个数据文件,程序启动的时候再去加载.保存这些简单数据,我们肯定会优先使用XML文件,今天讲讲如何读取XML里面的数 ...

  8. 编译Android内核 For nexus 5 以及绕过Android的反调试

    本文博客链接:http://blog.csdn.net/qq1084283172/article/details/54880488 前面的博客中已经记录了Nexus 5手机的Android 4.4.4 ...

  9. 关于Android Assets读取文件为File对象

    关于Android Assets读取文件为File对象的问题,在Assets里面放置文件,在使用的时候,一般是使用AssetManger对象,open方法获取InputStream 然后进行其他操作. ...

随机推荐

  1. echarts 版本区分导致的错误

    在更新到echarts2.2.5这个版本的时候发现map不能正常运行了.....擦!控制台一看: 我就日了,那个小刺老把这朕的源码改了......,找到这一行,果断给轮掉: 都特么好了..... 再透 ...

  2. 8.11-8.16:usaco

    summary:57 bzoj1741:裸二分图最大匹配 #include<cstdio> #include<cstring> #include<iostream> ...

  3. [转] Splay Tree(伸展树)

    好久没写过了,比赛的时候就调了一个小时,差点悲剧,重新复习一下,觉得这个写的很不错.转自:here Splay Tree(伸展树) 二叉查找树(Binary Search Tree)能够支持多种动态集 ...

  4. 陈正冲老师对于c语言野指针的解释

    那到底什么是野指针呢?怎么去理解这个“野”呢?我们先看别的两个关于“野”的词: 野孩子:没人要,没人管的孩子:行为动作不守规矩,调皮捣蛋的孩子.野狗:没有主人的狗,没有链子锁着的狗,喜欢四处咬人. 对 ...

  5. ora-28001:口令失效

    Oracle11G创建用户时缺省密码过期限制是180天(即6个月), 如果超过180天用户密码未做修改则该用户无法登录. Oracle公司是为了数据库的安全性默认在11G中引入了这个默认功能,但是这个 ...

  6. Spring AOP--返回通知,异常通知和环绕通知

    在上篇文章中学习了Spring AOP,并学习了前置通知和后置通知.地址为:http://www.cnblogs.com/dreamfree/p/4095858.html 在本文中,将继续上篇的学习, ...

  7. android ListView详解

    转自:http://www.cnblogs.com/allin/archive/2010/05/11/1732200.html 在android开发中ListView是比较常用的组件,它以列表的形式展 ...

  8. HDU 1075-What Are You Talking About(Trie)

    题意: 给你一个字典 一个英文单词对应一个火星单词 给你一段火星文翻译成英文 字典上的没有的不翻译 分析: 没有给数据规模 字典树用链表 #include <map> #include & ...

  9. linux常识

    一.linux常识 1.为什么学习linux及如何学习linux? 基于linux的操作系统是一种自由和开放源代码的类UNIX操作系统,其定义组件是linux内核,其稳定性.安全性.处理多并发已经得到 ...

  10. I2c串行总线组成及其工作原理

    采用串行总线技术可以使系统的硬件设计大大简化,系统的体积减小,可靠性提高,同时系统更容易更改和扩充 常用的串行扩展总线有:I2c总线,单总线,SPI总线,以及microwire.Plus等等 I2c总 ...