美文网首页
Android识别管道文件

Android识别管道文件

作者: 董江鹏 | 来源:发表于2021-04-08 11:30 被阅读0次

Java的File类提供的接口仅限于判断目录和文件,有时候在复制某些数据的时候,还需要判断其它的文件类型,比如管道文件,需要过滤掉,不然IO操作的时候会阻塞。
这里我们用到的是Android提供的stat操作,读取文件的mode,第一个字节是文件类型,后3个字节是权限

    /**
     * file type mask
     */
    public static final int S_IFMT = 0xf000;
    /**
     * file type is pipe
     */
    public static final int S_FIFO = 0x1000;
public static boolean isPipe(String filePath) {
        boolean result = false;
        StructStat structStat = null;
        try {
            structStat = Os.stat(filePath);
            int mode = structStat.st_mode;
            switch (mode & S_IFMT) {
                case S_FIFO:
                    result = true;
                    break;
                default:
                    break;
            }
        } catch (ErrnoException e) {
            e.printStackTrace();
        }
        return result;
    }

相关文章

  • Android识别管道文件

    Java的File类提供的接口仅限于判断目录和文件,有时候在复制某些数据的时候,还需要判断其它的文件类型,比如管道...

  • 管道和消息队列的区别

    管道和消息队列的区别管道(PIPE)管道通信方式的中间介质是文件,通常称这种文件为管道文件。两个进程利用管道文件进...

  • IIS 或者 Tomcat 处理android手机自带浏览器无法

    IIS 或者 Tomcat 处理android手机自带浏览器无法识别apk文件 写了一些 android 的应用放...

  • Android性能优化之布局优化

    参考《Android性能优化之布局优化》 侵删 绘制的原理 Android需要把XML布局文件转换成GPU能够识别...

  • Android进程间的通信

    Android进程间通信的方式有很多种,例如:文件通信、共享内存、Binder、Socket、管道、信号等等作为A...

  • Android IPC 面试题

    1.1 请回答一下Android进程间的通信方式? 文件通信、共享内存、Binder、Socket、管道、信号等在...

  • 更改AndroidStudio标签页及文件状态颜色

    Android Studio 会自动识别工程目录的的版本控制文件(SVN或Git),然后根据文件的版本状态来决定文...

  • 爬取梨视频2018-11-02

    爬虫文件 item 管道文件

  • 进程间通信之有名管道

    1 有名管道 有名管道与无名管道的通信机制差不多,唯一不同在于,有名管道需要在文件系统中创建指定名称的管道文件,用...

  • Linux 进程间通信

    进程间通信 一 进程间通信 -- 管道 mkfifo test 创建管道文件 匿名管道和命名管道:匿名管道:匿名管...

网友评论

      本文标题:Android识别管道文件

      本文链接:https://www.haomeiwen.com/subject/tjrihltx.html