我想以流模式读取目录中的文件内容,即 将新文件添加到目录中后,请阅读它。
下面是示例代码,我观察到该程序在打印目录中所有已存在的文件之后,然后添加了一个新文件,但是该程序未打印新添加的文件的内容。
我不确定问题出在哪里。
import org.apache.flink.api.java.io.TextInputFormat
import org.apache.flink.core.fs.Path
import org.apache.flink.streaming.api.functions.source.FileProcessingMode
import org.apache.flink.streaming.api.scala.{DataStream, StreamExecutionEnvironment}
import org.apache.flink.streaming.api.scala._
object FileBasedDataStreamTest {
def main(args: Array[String]): Unit = {
val env = StreamExecutionEnvironment.getExecutionEnvironment
val path = "D:/flink-data/001"
val ds: DataStream[String] = env.readFile(new TextInputFormat(new Path(path)), path, FileProcessingMode.PROCESS_CONTINUOUSLY, 100)
ds.print()
env.execute()
}
}