00:00
我们已经知道怎么样从集合里边读取数据了,但是大家发现从集合读取数据的话,这个数据相当于直接写死在这儿了,对吧?啊,这就相当于我们是代码里边hard code啊,把所有数据都放进来了,这显然不是一个好方法啊,那如果说我们常规情况下,假如说这个数据是测试数据都已经现成的话,那我们是不是可以把它放在一个文件里边读取文件啊,啊,这个其实在之前我们做那个呃,Work的时候已经做过这个事情啊,现在我们再来给大家详细的说一下怎么去做这件事。所以接下来我们在S下边去new一个class,这个我们叫s test2,呃,这个就是five对吧。File的读取啊,然后同样里边的这个过程PSVM还是一样,上边我们要去抛出一个异常,然后下边同样还是stream execution environment,先get到当前的执行执行环境,Env定义出来,接下来是从文件读取数据,那其实我们想到是不是接下来我们要只要定义知道那个文件路径就完事了呀,哎,所以这里面我们首先是要把那个文件要定义出来啊,我们还是在resources下边把这个文件创建创建出来,比方说现在我叫sensor吧,sensor.txt呃,然后这里边可能就是需要把我们之前的这个数据要copy过来,对吧?啊,那这个大家还要稍微的更改一下啊,你就不要有这个包装的这些东西了,对不对,我就直接用逗号分割啊,大家注意一下这个L是不是也不要啊,对吧,那个时我们在代码里边的一个,呃,长整形的一个定义啊,所以。
01:44
所以这里边我就把对应的这些不必要的东西全部删掉。定义这么几条数据。哦,那大家想这个数据我读进来之后,跟之前有什么区别吗?就是跟跟我们那个从集合里边读取数据的话,这读进来有什么区别,好大家会想到这个得到的结果还是data stream reading吗?
02:14
之前我们这个读进来是不是直接就是data stream reading啊,现在还是吗?对,大家注意,现在是不是你从文件读进来就只能是一个string啊,对吧?哎,就只能是这个字符串嘛,你如果要是想包装那个sensor reading,是不是后面还得自己做转换计算啊,哎,所以这里边就是这样的一个过程啊,我们把这个叫做data stream啊,然后去en为这个也非常简单,是不是可以read text file对吧?当然也可以有更一般化的这个read file啊,你得定义一个这个form format对吧,格式化的工具,那这个read text file的话就非常简单,我直接copy一下当前的这个路径,写在这里就完事了。哦,这个这个大家注意一下,这个直接copy过来的话,这个有问题,就是你最好是先有一个引号对吧,然后你直接copy这个路径的话,它会自动给我们补齐这个反引号对吧?啊,反斜杠啊,Windows里面的路径可以有这样的一个定义啊,那这样读取出来之后,后边就是打印啊,打印输出data stream print。
03:22
后边不要忘记还有一步,哎,对,执行起来env execute对吧?啊,这个如果我们测试的话,当然就跟之前这个长得不一样了,之前这个sensor reading,大家看直接输出sensor reading,其实掉了一个什么样?对大家想啊,这里边这个直接print的时候,其实是这里边的数据类型是sensor reading,其实我们print是掉了它的to string方法对吧?诶,那现在我们这个file如果直接to string的话,其实不用to string,它本来就是string对不对?所以这里边是不是直接输出的就是这里的结果啊,对吧?啊,当然现在大家看到它是不按顺序输出的,如果要是想要按照顺序输出的话,可以在全局的把它设置成并行度是一,对吧?哎,这就是关于这个从文件里边读取数据这样的一个结果啊。
04:13
本身这个也是非常简单,大家可以把这个运行一下,看到这个执行结果就可以了,完完全没有问题啊。
我来说两句