在 ML(SMLNJ) 中打开文件
我需要读取 ML (SLMNJ) 中的文件并将其保存在某些结构中。我需要读取一些指向图形声明的数据:(
[( 1 , 2 , 13 ),( 2 , 3 , 3 ),( 2 , 4 , 8 ),( 2 , 5 , 4 ),( 3 , 1 , 5 ),( 3 , 4 , 1 ),( 4 , 6 , 5 ),( 5 , 5 , 5 ),( 6 , 4 , 6 )]
第一个数字:节点名称,第二个数字:连接节点的名称,该鬃毛的第三个数字权重(每个()显示一个鬃毛))
例如,这是测试输入如何读取文件以及保存它的结构
I need to read file in ML (SLMNJ) and save it in some structures. I need to read some data that points to graph declaration:
[( 1 , 2 , 13 ),( 2 , 3 , 3 ),( 2 , 4 , 8 ),( 2 , 5 , 4 ),( 3 , 1 , 5 ),( 3 , 4 , 1 ),( 4 , 6 , 5 ),( 5 , 5 , 5 ),( 6 , 4 , 6 )]
(first number: name of the node , secend number: name of connected node , third number weight for this mane (each () show one mane ) )
for expamle this is test input how to read file and which structure to save it
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
要从文件中读取,请遵循以下每行字符串列表:
使用此函数,您可以将其解析为元组 (x,y,z ) :
for reading from file follow this to list of string per line :
and with this function you can parse it to tuple (x,y,z ) :
这个问题非常适合解析组合器,你可以从我的朋友格雷格那里窃取哈佛大学的莫里塞特。
如果您想了解基本思想,请阅读 Graham Hutton 的论文 Higher - 用于解析的函数的顺序。如果您想了解如何在标准 ML 中实现 I/O,请参阅
标准基础库中的 TextIO
模块。如果您希望有人为您编写代码,您可能访问了错误的网站。This problem is perfectly suited to parsing combinators, which you can steal from my friend Greg Morrisett at Harvard.
If you want to understand the underlying ideas, read Graham Hutton's paper Higher-Order Functions for Parsing. If you want to know how to implement I/O in Standard ML, consult the
TextIO
module in the Standard Basis Library. If you want someone to write the code for you, you may have reached the wrong web site.