createPipeline的时候,编译器提醒无法打开small.in,没生产此文件

来源:3-5 完整外部排序

慕粉4019974

2018-12-22 21:39

func createPipeline(filename string, fileSize ,chunkCount int) <-chan int{
   chunkSize := fileSize / chunkCount
   sortResults := []<-chan int{}
   for i:= 0; i < chunkCount; i++{
      
      if err != nil{
         panic(err)
      }
      file.Seek(int64(i * chunkSize),0)

      source := pipeline.ReaderSource(bufio.NewReader(file),chunkSize)
      sortResults = append(sortResults,pipeline.InMenSort(source))
   }
   return pipeline.MergeN(sortResults...)
}


写回答 关注

4回答

  • 慕工程3002471
    2019-07-13 14:22:47

    老师的是small.in文件也不再同一个目录吧,不知道为什么能打开?

  • 慕工程3002471
    2019-07-13 14:21:33

    不copy的话,还有一个方法: import 

        "path/filepath"

    absPath, _ := filepath.Abs("../pipelineDemo/small.in")

    然后打开那个全路径就行。

  • zhiaini006
    2019-02-18 00:23:37

    编译器似乎将产生的 small.in 文件放到了上层目录,所以在本层目录没有找到,你可以手动将产生的在上层的那个 small.in 文件 copy 到这个pipeline 文件夹中,然后就可以执行了。

    慕工程300...

    恩 我copy过了 可以;不过有没有别的方法可以读取非源文件当前目录的文件呢?我试了 "/cmd/piplineDemo/small.in" 也不行

    2019-07-13 13:24:47

    共 1 条回复 >

  • 慕粉4019974
    2018-12-22 21:39:54

    https://img4.mukewang.com/5c1e3e9c0001827015580723.jpg如图所示

搭建并行处理管道,感受GO语言魅力

通过搭建并行数据处理管道,展示go语言在并发编程方面的优势

19375 学习 · 78 问题

查看课程

相似问题