精华内容
下载资源
问答
  • 前几天遇到个问题,需要查找hadoop的map函数里输入分片的文件路径。  不多废话贴上代码,供大家参考  FileSplit f = (FileSplit)context.getInputSplit();  Path p = f.getPath();  context.write(value, ...

         前几天遇到个问题,需要查找hadoop的map函数里输入分片的文件路径。

         不多废话贴上代码,供大家参考

          FileSplit f = (FileSplit)context.getInputSplit();
          Path p =  f.getPath();
          context.write(value, new Text(p.getParent().getName()));

    展开全文
  • 1.同级目录下文件打开法 直接把文件放在同级目录下,直接输入文件名打开就行。 这也分两种,按照是否加双引号区分 //1.自定义输入文件名类型 string file_name; cin >> file_name;...2.寻找路径

    1.同级目录下文件打开法
    直接把文件放在同级目录下,直接输入文件名打开就行。
    这也分两种,按照是否加双引号区分

       //1.自定义输入文件名类型
        string file_name;
    	cin >> file_name;
    	ifstream ifs(file_name, ios::in);//这里就不加双引号
    
    //2.预先输入好
    ifstream ifs("1.txt",ios::in); //这时候就要有双引号,还有注意txt别重复打,文件命名1,这里写成1.txt
    

    2.寻找路径法
    我们先随便复制一个路径:"C:\Users\DELL\source\repos\大作业-课堂随机点名程序\课堂随机点名程序\2.txt"
    在c++中打开的时候要把所有的向下级目录的分割符号单斜杠\换成双斜杠\。
    改成下面这样:"C:\\Users\\DELL\\source\\repos\\大作业-课堂随机点名程序\\课堂随机点名程序\\2.txt"
    如何复制路径:
    在这里插入图片描述

    原因:
    明确说明在程序里面写字符串的时候,反斜杠的作用是转义字符,要想表达出字符串里有反斜杠这个字符,就要用两个反斜杠。
    所以我们要将所有的单斜杠\换成双斜杠\。

    展开全文
  • MapReduce获取输入文件路径(全)

    千次阅读 2019-01-21 17:55:07
    我们知道在MapReduce框架中会将输入的文件切分成许多(InputSplit)文件块,每个文件块包含了文件路径,起止偏移量等信息,每一个文件块交给一个map任务进行处理。而文件块的生成是通过InputFormat调用getSplits方法...

    对于MapReduce而言,在Map端经常需要知道处理文件的输入路径,以此来区分不同的处理方式。

    我们知道在MapReduce框架中会将输入的文件切分成许多(InputSplit)文件块,每个文件块包含了文件路径,起止偏移量等信息,每一个文件块交给一个map任务进行处理。而文件块的生成是通过InputFormat调用getSplits方法实现的,不同的InputFormat会有不同的切分规则,生成不同类型的文件块。

    因此不同的InputFormat采用不同的获取文件路径的方法:

    1、一般FileInputFormat

    一般的FileInputFormat是MapReduce中最常用的一种输入格式,包括TextInputFormat,ParquetInputFormat,SequenceFileInputFormat等,这些输入格式切分的文件块类型为FileSplit。

    因此获取文件路径方法为:

    @Override
    public void map(LongWritable key, Text value, Context context)
    				         throws IOException, InterruptedException{
    
        InputSplit split = context.getInputSplit();
        FileSplit fileSplit = (FileSplit) split;
        String filePath = fileSplit.getPath().toUri().getPath();
        ......
    			 
    }
    

    2、CombineFileInputFormat

    CombineFileInputFormat输入格式实现的是小文件合并输入,使用场景是输入文件中有很多小文件,导致会产生很多的map任务增大了系统的调度、通信开销。需要将许多小文件合并成一个map任务进行处理,CombineFileInputFormat详细使用情况会专门介绍,这里就不展开了。此输入格式切分的文件块类型为CombineFileSplit。由于CombineFileSplit包含多个要处理文件的信息,所以通过CombineFileSplit并不知道当前处理的数据来自哪份文件。不用担心,在map任务读取文件块的时候,将数据所在的文件信息在上下文context中进行了保存,获取方法如下:

    @Override
    public void map(LongWritable key, Text value, Context context)
    				         throws IOException, InterruptedException{
    
        String filePath = context.getConfiguration().get("mapreduce.map.input.file");
        
        ......
    			 
    }

    3、MultipleInputs(DelegatingInputFormat)

    MultipleInputs多文件输入:对多种输入类型的需要编写不同的map函数进行处理,比如同时处理hdfs上的一般文本数据,Hbase数据,mysql数据等,此时就需要用到这种输入方式。

    //普通文件
    MultipleInputs.addInputPath(job, TxtInputPath, TextInputFormat.class,TextMapper.class);
    //Hbase,hbaseInputPath无意义且没有用到,但是是必传的,可以任意指定
    MultipleInputs.addInputPath(job, hbaseInputPath, TableInputFormat.class, TableMap.class);

    其指定的输入格式为DelegatingInputFormat,但是每份数处理用的还是上面指定的输入格式, 切分出的文件块类型也是根据上面指定的输入格式确定,被封装在TaggedInputSplit类中,这个类访问修饰符是default的,定义如下:

    class TaggedInputSplit extends InputSplit implements Configurable, Writable

    这样我们就不能直接使用这个类,此时需要用反射的机制来获取输入文件路径:

    对于这种格式输入获取的是一般文本数据路径(Hbase,mysql没有文件路径的概念)。

    @Override
    public void map(LongWritable key, Text value, Context context)
    				         throws IOException, InterruptedException{
        String filePath = null;
        InputSplit split = context.getInputSplit();
        if (split.getClass().getName().equals("org.apache.hadoop.mapreduce.lib.input.TaggedInputSplit")) {
            Method getInputSplitMethod = split.getClass().getDeclaredMethod("getInputSplit");
    		// 设置访问权限 true:不需要访问权限检测直接使用 false:需要访问权限检测
    		getInputSplitMethod.setAccessible(true);
    		InputSplit realSplit = (InputSplit) getInputSplitMethod.invoke(split);
            if (realSplit instanceof FileSplit) {
                FileSplit fileSplit = (FileSplit) realSplit;
                filePath = fileSplit.getPath().toUri().getPath();
            } else if (realSplit instanceof CombineFileSplit) {
                filePath = context.getConfiguration().get("mapreduce.map.input.file");
            }
    
      }
        
        ......
    			 
    }

    spark获取文件路径我的另一篇博文https://blog.csdn.net/zwlll19900607/article/details/103482312

    展开全文
  • Matlab的which函数——查找文件路径

    千次阅读 2020-04-07 17:20:18
    which(‘aaa’)(查找文件名为aaa的文件的路径) 比如输出路径为:E:\ toolbox\ matlab\ myDIYfile\ aaa.m 需要注意: (1)当要查找的文件路径中,三层及以上的母文件夹名字中有大写字母时,它的输出路径中会将...

    which函数可以给出指定文件的路径

    用法:
    which(‘aaa’)(查找文件名为aaa的文件的路径)
    比如输出路径为:E:\ toolbox\ matlab\ myDIYfile\ aaa.m

    需要注意:
    (1)当要查找的文件路径中,三层及以上的母文件夹名字中有大写字母时,它的输出路径中会将大写字母变成小写字母,比如用which查找ccc的路径,它会输出:E:\ toolbox\ matlab\ mydiyfile\ a\ b\ ccc.m其中文件夹myDIYfile已经变成mydiyfile。
    (2)在matlab中,并不区分路径中的大小写字母,比如 输入命令 cd E:\ toolbox\ matlab\ mydiyfile\ a\ b 和命令cd E:\ toolbox\ matlab\ myDIYfile\ a\ b都会进入到b这个文件夹中。
    (3)但是,当将两个路径作为字符串进行对比时,比如 strcmp (which(‘ccc’),‘E:\ toolbox\ matlab\ myDIYfile\ a\ b\ ccc.m’),则结果为false,因为which(‘ccc’)会将大写DIY变成diy,那么用字符串来对比路径就不明智了。

    附加:
    如果想得到aaa.m文件所在的文件夹路径可以用fileparts函数:
    dir1=which aaa;
    [dir2, ~]= fileparts(dir1);
    %dir1为文件aaa的路径 E:\ toolbox\ matlab\ myDIYfile\ aaa.m
    %dir2为aaa所在文件夹的路径 E:\ toolbox\ matlab\ myDIYfile

    展开全文
  • 这个脚本是用来查找指定路径下,含有某个关键字的所有文件,并显示文件所在路径及文名。
  • 根据文件路径查找索引节点 操作系统的文件管理系统的主要作用就是,当用户需要访问一个文件时,系统可以通过用户给出的文件路径找到文件的索引节点,从而找到文件,并以文件对象的实例交付给用户进程。下面就以系统...
  • Hadoop中获取输入文件路径

    千次阅读 2011-04-16 00:34:00
    本文提供一种获取mapper输入文件路径的方法。在多个数据源格式相同无法区分来源时,可以尝试使用这种办法。
  • 上一章节讲诉了使用find命令查询...所以针对这个问题,今天我们来学习另外一个能快速查找一个文件的命令,以及这个命令原理是什么,还会教大家如何在linux中查找我们输入命令所在文件路径。 一、locate 命令 : l...
  • 比如某个文件的快速启动项被删除,或者你要建立快速启动项,或者想删除、 添加安装文件等等,很多地方都要用到查案文件安装路径的命令。 这里给大家介绍Linux查看文件安装路径(地址)命令。   一、查看文件安装...
  • liunx下查找指定文件路径

    千次阅读 2018-03-28 11:52:52
    find / -name *文件名*如:查找我在centos下通过yum安装的redis配置文件路径在哪里,执行:find / -name redis.conf
  • python-在文件夹里查找指定文件,并返回文件路径 要求: 用户输入文件名以及开始搜索的路径,搜索该文件是否存在。 如遇到文件夹,则进入文件夹继续搜索 import os print('请输入查找的初始目录:', end='') id1 =...
  • 由于 macos 没有像 Windows 系统那样明确的硬盘,当我们想要查找某个应用的安装目录时,有时候我们会忘记了应用的安装路径,此时我们可以利用终端查找文件路径,并且根据该路径找到该文件。 本文以查找 java.exe ...
  • Ubuntu 显示文件路径

    千次阅读 2019-03-06 11:55:12
    1. 当前文件夹路径 如~/catkin_ws/src/beginner_tutorials/文件的路径 输入 ...2.查找文件夹或文件路径 find package filename ROS系统 rospack find filename eg:找turtlebot_bringup ro...
  • 如何查找本机ssh秘钥或文件路径

    千次阅读 2020-05-31 22:24:11
    在安装Git前提下,打开Git Bash Here 1、输入 cd ~/.ssh 进入到.ssh 文件夹 2、输入 ls 查看.ssh 文件夹里面的文件,有 id_rsa id_rsa.pub known_...4、若需要找秘钥文件路径的话,输入pwd,就可以看到路径了 ...
  • jupyter 更换文件路径

    千次阅读 2019-04-10 12:56:04
    1. 打开Windows的cmd,在cmd中输入jupyter notebook --generate-...接下来会显示路径,粘贴该路径到文件夹查找即可找到(或者直接在管理员文件夹下找 .jupyter 文件) 里面的 jupyter_notebook_config.py 文件 ...
  • Python中的os模块有比较强大的对文件的操作,使用os模块可以比较方便地实现文件查找: os模块的常用函数可参见Python中使用OS模块进行文件操作 实现代码及注释如下: #导入os模块 import os #查找函数:Path-...
  • 1.打开Finder 2.按 shift + command + g 3.输入正确文件路径 4.回车进入 ps./usr/...文件是隐藏的,需通过此方法进入
  • 1,语音播放: CreateObject(“SAPI.SpVoice”).Speak"崭新的开始,你好!&...然后输入管理员密码即可!...3,cmd 查找文件路径 开机启动 展开一下所有文件 递归。 :for
  • Linux查看文件路径

    万次阅读 2018-08-21 16:40:16
    Linux下有两个命令可以查看命令或者文件所在的位置 1.which ...意思就是说:如果我直接输入 python ,那么输出的就是 python 命令的默认执行路径 即:/usr/bin/python which命令的原理:在...
  • 打开火狐浏览器url输入:about:support,配置文件夹(点击显示文件夹) 打开火狐浏览器,点击帮助--故障信息 转载于:https://www.cnblogs.com/melody26/p/8662653.html...
  • 读取配置文件的各种方式1.类加载器读取:只能读取classes或者类路径中的任意资源,但是不适合读取特别大的资源。 ①获取类加载器 ClassLoader cl = 类名.class.getClassLoader(); ②调用类加载器对象的方法:...
  • 快速查找Python安装路径方法

    万次阅读 多人点赞 2018-02-28 15:22:42
    我相信一定有很多的人跟我一样,经常忘记Python安装的路径,每当用到的时候,最笨的办法就是在全局电脑里,直接查找Python,这样是肯定能查到的,但是如果你的电脑文件超级多,这将是一个工厂量很大的事情,你要等...
  • 比如说我安装了Oracle,但是不知道文件都安装在哪些地方、放在哪些文件夹里,可以用下面的命令查看所有的文件路径 在终端输入: whereis oracle 回车,如果你安装好了Oracle,就会显示文件安装的地址,例如我的...
  • Linux如何查找文件安装路径oracle

    万次阅读 2012-10-23 10:27:27
    比如某个文件的快速启动项被删除,或者你要建立快速启动项,或者想删除、 添加安装文件等等,很多地方都要用到查案文件安装路径的命令。 这里给大家介绍Linux查看文件安装路径(地址)命令。   一、查看文件...
  • import os ...panfu = input('请输入文件所在盘符:') name = input('请输入文件全名:') print('正在查找中...') lujing = search(panfu+':/', name) print('目标文件具体位置为:', lujing) 结果:
  • function,创建函数文件: function [ VecFiles ] = FindFiles( InputDir,ext,IsReturnNameOnly ) ...%ext:查找文件名字符段 %IsReturnNameOnly:是否只返回文件名 %check当前路径是否合法 if ~isdir(InputDi...
  • #用户输入 文件名和路径 判断是否存在 import os num =0 def find_data(name,site): '''递归寻找文件的地址''' global num if (os.path.isdir(site)): os.chdir(site)#将目录移动到需要查找的目录 else: ...
  • 比如某个文件的快速启动项被删除,或者你要建立快速启动项,或者想删除、添加安装文件等等,很多地方都要用到查案文件安装路径的命令。 这里给大家介绍Linux查看文件安装路径(地址)命令。 一、查看文件安装...
  • cmake配置c++可调用的文件路径参数

    千次阅读 2014-05-15 16:27:53
    在程序中使用一个路径配置,因为在svn服务器的测试数据,测试数据成为了本地路径,在程序中使用了绝对路径来处理文件输入,这个令人头疼啊。 每次下完代码,我得挨个地方去找,谁在用本地路径,有点绝对路径为:e...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 393,594
精华内容 157,437
关键字:

寻找文件路径的输入方式