如何修改旧版本的printer.Fprint使其可以在最新版本的Go上运行
str := new(bytes.Buffer) //old code
printer.Fprint(str, c) //old code
str := new(token.FileSet) //new code
printer.Fprint(os.Stdout, str, c) //new code
source += "\t" + str.String() + ";\n"
在此代码中,我尝试将 str 的值从 new(bytes.Buffer) 更改为 new(token.FileSet) 因为 Fprint 的参数需要;func Fprint(output io.Writer, fset *token.FileSet, Node interface{}) os.Error //最新版本
现在,我陷入了错误 str.String(),因为 str 没有方法 String()。 我无法更新我的代码以在最新版本的 Go 中运行,因为更改了 Printer.Fprint()
这个要怎么转呢?
str := new(bytes.Buffer) //old code
printer.Fprint(str, c) //old code
str := new(token.FileSet) //new code
printer.Fprint(os.Stdout, str, c) //new code
source += "\t" + str.String() + ";\n"
In this code i try to change str's value from new(bytes.Buffer) to new(token.FileSet) because Fprint's argument requier;func Fprint(output io.Writer, fset *token.FileSet, node interface{}) os.Error //latest ver.
now, i'm stucking in error str.String() because str don't have method String().
I cann't update my code for run in latest version of Go because a changed of printer.Fprint()
How to volve this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这是一个示例程序。
输出:
Here's a sample program.
Output: