从文本文件中读取单个数字并在Julia中提前输入流位置

时间:2015-05-18 17:01:20

标签: parsing file-io stream julia

据我所知,Julia有一套完整的低级工具,可以一方面与二进制文件连接,另一方面有一些强大的工具,例如readdlm,可以将包含矩形数据的文本文件加载到Array结构上。另一方面。

然而,在标准库文档中我无法发现的是如何轻松地从结构较少的文本文件中获取输入。特别是,c ++习语的Julia等价物

some_input_stream >> a_variable_int_perhaps;

鉴于这是一种常见的使用场景,我很惊讶这样的事情在标准库中并不突出......

1 个答案:

答案 0 :(得分:4)

您可以使用<ControlTemplate x:Key="FilterTemplate" TargetType="{x:Type xcdg:ColumnManagerCell}"> <SomeControlInHere> <SomeControlInHere.Style> <Style TargetType="{x:Type xcdg:ColumnManagerCell}" > <Setter Property="Template" Value="{StaticResource {ComponentResourceKey TypeInTargetAssembly={x:Type filter:DataGridHeaderFilterControl}, ResourceId=DataGridHeaderFilterControlStyle}}" /> </Style> </SomeControlInHere.Style> </SomeControlInHere> </ControlTemplate> <Style TargetType="{x:Type xcdg:ColumnManagerCell}"> <Setter Property="Template" Value="{StaticResource FilterTemplate}"/> </Style> http://docs.julialang.org/en/latest/stdlib/io-network/#Base.readuntil

readuntil

编辑:发表评论

要获取不规则格式的ascii文件中的最后一个整数,如果您知道整数前面的字符,我可以使用shell> cat test.txt 1 2 3 4 julia> i,j = open("test.txt") do f parse(Int, readuntil(f," ")), parse(Int, readuntil(f," ")) end (1,2)

split

就代码长度而言,上述示例是完全自包含的,并且以异常安全的方式打开和关闭文件(即包装在try-finally块中)。在C ++中做同样的事情会非常冗长。