将字符串附加到 IronScheme 中的现有文本文件

2024-03-21

我们正在尝试使用 IronScheme 构建一个日志文件,并且我们已经使用racket 为其编写了代码。它在球拍中工作正常,但 IronScheme 会抛出错误。这是我们目前所拥有的:

(define write-to-log
(lambda(whatToWrite)
(with-output-to-file "robot-log.txt"
(lambda () (printf (string-append whatToWrite "\r\n" ))) #:exists 'append)))

了解我们在使用 with-output-to-file 时如何使用“exists”可选参数。我们不确定如何使该可选参数与 IronScheme 一起使用。有什么方法可以让它发挥作用,或者其他方法吗?

请注意,我们希望将字符串附加到现有的 .txt 文件中。如果我们不使用可选参数,则会抛出错误,指出文件已存在。


IronScheme 支持 R6RS :)

file-options不可用with-output-to-file,所以你需要使用open-file-output-port.

示例(不正确):

(let ((p (open-file-output-port "robot-log.txt" (file-options no-create))))
  (fprintf p "~a\r\n" whatToWrite)
  (close-port p))

Update:

以上将not工作。您似乎发现了 IronScheme 中的一个错误。但从 R6RS 来看还不清楚什么file-options如果有的话,应该表现得像附加一样。我将进行更多调查并提供反馈。

更新2:

我曾与 R6RS 的一位编辑交谈过,它似乎没有一种可移植的方式来指定“附加模式”。当然,我们在 .NET 中提供了此功能,因此我将通过添加另一个来解决此问题file-options用于追加。我还会考虑为“简单 io”过程添加一些重载来处理这个问题,因为使用上面的代码相当乏味。感谢您发现问题!

更新3:

我已经解决了这个问题。从 TFS 修订版 114008 开始,append已添加到file-options. Also, with-output-to-file, call-with-output-file and open-output-file有一个附加的可选参数来指示“追加模式”。您可以从以下位置获取最新版本http://build.ironscheme.net/ http://build.ironscheme.net/.

Example:

(with-output-to-file "test.txt" (lambda () (displayln "world")) #t)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将字符串附加到 IronScheme 中的现有文本文件 的相关文章

  • Android 11 - 访问我的应用程序 Android/Data 文件夹中的文件

    由于某种原因 我真的很挣扎 希望有人能帮助我指明正确的方向 我的目标是 Android 11 API 30 这似乎是所有问题的根源 降低目标可能对我有用 但谷歌似乎最终会迫使我走上这条路 所以我不妨弄清楚这一点 我的应用程序通常会按照标准写
  • PHP is_file 和服务器根相对路径

    请问如何使用 is file 和 folder file jpg 这样的路径 谢谢你 如果路径以 开头 则表示该路径是绝对路径 当路径是相对路径时 即不以 开头 则采用相对于 php 脚本的路径 如果您希望 folder file jpg
  • 获取文件的上次访问时间

    我知道使用File对象我们可以获得最后修改时间File i e 文件 lastModified https docs oracle com javase 8 docs api java io File html lastModified 但
  • 如何在 Spring Boot 中从 resolurces 文件中读取文件夹,:从 Jar 运行时出现错误

    我正在尝试下面的代码 我在其中读取文件并从资源文件夹执行 File fileList new File getClass getResource jsonData toURI listFiles for File file fileList
  • Python:数百万个小文件的读写速度缓慢

    结论 看来 HDF5 是适合我的目的的方法 基本上 HDF5 是一种用于存储和管理数据的数据模型 库和文件格式 并且旨在处理令人难以置信的大量数据 它有一个名为 python tables 的 Python 模块 链接在下面的答案中 HDF
  • Restlet 和 MULTIPART_FORM_DATA 或通过 Restlet 将文件放在 Google App Engine 上的其他方式

    我尝试通过 Restlet 接收文件 但只获得完整的 MULTIPART FORM DATA 如何提取我的特定文件 我找到了一些代码块 但它们的类型不可用 RESTlet 如何处理多部分 表单数据请求 https stackoverflow
  • 方案中的尾递归幂函数

    我在方案中编写尾递归幂函数时遇到问题 我想使用辅助函数来编写该函数 我知道我需要一个参数来保存累计值 但在那之后我就陷入了困境 我的代码如下 define pow tr a b define pow tr h result if b 0 r
  • 移动文件并覆盖[重复]

    这个问题在这里已经有答案了 即使同名文件已存在 我也尝试移动文件 NSFileManager moveItemAtURL location1 toURL location2 Does NSFileManager的方法moveItemAtUR
  • 方案如何返回多个值?

    我注意到几乎所有方案函数只能返回一个列表作为输出 下面 我想返回邻居的所有相邻节点的多个值 define neighbors l w if and 1 l 1 w list and l 1 w and 1 l w how to output
  • FileReader 在 Ionic 2 中未触发 onloadend

    我正在尝试使用 cordova file plugin 读取本地文件 目前我可以读取本地目录的内容并选择单个文件 但我在获取文件内容时遇到问题 这是我的函数 从列表中选择文件后单击按钮即可调用该函数 import window resolv
  • 如何重命名 GitHub 网站上的目录/文件夹?

    我在 GitHub 网站上找到了一种方法rename https github com blog 1436 moving and renaming files on github一个文件并成功完成 我也找到了一种方法rename https
  • 并行模拟写入同一文件

    我的目标是在集群上并行运行 10 000 个左右的 Julia 编码模拟 每个模拟独立于所有其他模拟 每个模拟都有一个要输出的数字 以及有关哪个模拟产生该数字的 3 列信息 因此 强制每个模拟打印在单独的文件上对我来说听起来有点愚蠢 我可以
  • 单击一次文件丢失

    将 Clickonce 与 VS 2010 和 NET Framework Client profile 3 5 一起使用 我有几个文件夹 其中包含运行时所需的应用程序级 XML 和 或文本文件 这些文件夹位于要使用它们的同一项目中 这些文
  • PHP上传问题

    我使用了一些脚本来开始在我的开发计算机上上传文件 问题是 尽管此操作预期很容易 但每当我尝试上传图像时 Apache 似乎都会超时 上传设置为On和tmp目录设置在php ini 我尝试上传主要内容gif来自谷歌 一个8 36KB图像 它应
  • 是否可以使用.NET 跟踪文件操作?

    当以某种方式调用文件操作 例如打开或关闭 时 我是否可以在操作系统继续请求之前处理它 如果可能的话可以通过以下方式取消它 NET http en wikipedia org wiki NET Framework 如果 NET没有这样的能力
  • 在Racket中将结构递归转化为累积递归

    我有一些代码来查找最大高度并将其替换为关联的名称 身高和姓名有单独的列表 每个列表的长度相同且非空 我可以使用结构递归来解决这个问题 但必须将其更改为累积递归 而且我不确定如何做到这一点 我见过的所有例子都让我困惑 有人能够将代码变成使用累
  • Python 将列表追加到列表中

    我正在尝试编写一个通过矩阵的函数 当满足条件时 它会记住该位置 我从一个空列表开始 locations 当函数遍历行时 我使用以下方法附加坐标 locations append x locations append y 函数末尾的列表如下所
  • C++:获取器和设置器?

    我正在尝试编写一些代码来为以下数据的 ID 号 名字 姓氏 期中成绩和期末成绩创建 getter 和 setter 这些数据位于我正在编写的班级的文本文件中 10601 ANDRES HYUN 88 91 94 94 89 84 94 84
  • Emacs Lisp 可以将 lambda 形式分配给像Scheme 这样的变量吗?

    在研究 Emacs Lisp 的符号单元时 我发现像这样的示例函数 defun a rest x x 我可以打电话 symbol function a 返回 lambda rest x x 如果我愿意的话我可以使用它 gt lambda r
  • PHP 文件上传帮助

    div align center div 这是我的代码

随机推荐

  • AVPlayer 在模拟器上可以播放,但在真实设备上却无法播放

    我正在实现一个基本的音频播放器来播放远程音频文件 文件格式为 mp3 我编写的代码在模拟器上运行良好 但在真实设备上不起作用 然而 如果我使用 safari 在同一个真实设备上 加载它 我在应用程序中使用的相同 url 工作正常 所以我并没
  • 为什么PHP APC缓存未命中不断增加

    我正在使用 apc php 检查 PHP APC 的统计信息 http svn php net viewvc pecl apc trunk apc php 我在相当繁忙的服务器上有以下统计数据 Cached Files 317 26 3 M
  • Recyclerview 中的 Exoplayer 错误,源错误 没有可用的提取器

    我正在使用 ExoPlayer 在 RecyclerView 中流式传输视频 我正在 ViewHolder 内的 RecyclerView 适配器的绑定方法中实现 ExoPlayer 我使用的视频格式是 m3u8 我使用的 URL 在浏览器
  • 我如何使用 PHP 获取当前月份和前三个月

    谁能告诉我如何使用 PHP 获取当前月份和前三个月 例如 echo date y M d 输出将为 09 Oct 20 但是我需要 August 九月 October 作为输出 提前致谢 Fero 对于月份的完整文本表示 您需要传递 F e
  • 改进最小/最大下采样

    我有一些大型数组 约 1 亿点 需要以交互方式绘制 我目前正在使用 Matplotlib 按原样绘制数组会变得非常慢并且很浪费 因为无论如何您都无法可视化那么多点 因此 我创建了一个最小 最大抽取函数 并将其与轴的 xlim changed
  • Vim Spell 选项忽略包含下划线、数字等的源代码标识符

    vim 拼写检查器中是否有任何选项可以忽略纯文本文件中包含下划线 多个大写字母 减号 数字的单词 我在手册 7 2 或谷歌搜索中找不到任何内容 您可以使用syntax命令与 NoSpell簇 syn match myExCapitalWor
  • 无 JIT 优化

    看一下这个问题 https stackoverflow com questions 17761515 java multiplication strange behaviour 代码 class test public static voi
  • 由于 IDFA 无法点击“准备上传二进制文件”

    我即将提交应用程序的更新 当我单击 准备上传二进制文件 时 我收到以下问题 此应用程序是否使用广告标识符 IDFA 由于 AdMob 使用它 我选择 是 下图显示了当我单击 继续 时发生的情况 唯一的问题是 无法选择应用程序如何使用IDFA
  • 为什么随机类不是真正随机的? [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我在留言板上读到过这件事 Random班级并不是真正随机的 它是使用数学公式以可预测的方式创建的 真的是这样吗 如果是这样 Random真的不是随机的
  • Python 输入无法正确比较[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我今天在测试中做到了这一点 然后回来测试它 我知道更好的方法来做到这一点 但为什么这不起作用 def f e raw input ente
  • 从现有架构生成表关系图(SQL Server)[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 有没有办法生成一个图表 显示现有表及其与数据库的连接的关系 这是针对 SQL Server 2008 Express Edition 的
  • 什么是 C/C++ 数据段和堆栈大小?

    我读到这取决于编译器和操作系统架构 如何在使用 GCC 作为编译器的 Linux 系统上找到数据段和堆栈最大大小 让我和你一起实验一下 创建文件 test c 如下所示 int main void return 0 现在编译它 指定最大堆栈
  • 使用 ExtJ 进行多选组合框

    如何实现多选组合框作为Ext FormPanel使用ExtJs 我一直在寻找 但似乎找不到与最新版本的 ExtJs 兼容的解决方案 这个问题 https stackoverflow com questions 2635809 multise
  • 加载 tableview 之前检测 iPhone 方向

    所以 我有点陷入困境 根据这个帖子 https stackoverflow com questions 3402401 get launch orientation of ipad app iPhone iPad 的方向在一定程度上是纵向的
  • 提交的 iPhone 应用程序二进制详细信息中显示“预渲染图标标志:true”,但图标在商店中显示为光泽效果 [关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 图标已包含
  • 如何设置 UINavigationBar 上后退按钮的文本? [复制]

    这个问题在这里已经有答案了 可能的重复 如何更改导航栏上 后退 按钮的标题 https stackoverflow com questions 1449339 how do i change the title of the back bu
  • 如何将 $index 从 ng-repeat 表获取到模态控制器?

    我有一个使用 angularjs bootstrap ui 创建的客户记录表 并使用 ng repeat 表中每行的末尾都有一个按钮 用于获取有关客户的更多信息 单击该按钮时 会弹出一个包含信息的模态表单 我的问题是无论我按哪个按钮我都会得
  • Cocoa 有布局/几何管理吗?

    如果我创建 WinForms Qt Gtk 应用程序 我使用所谓的 布局管理器 或 几何管理器 根据小部件内的文本和我的指令自动布局我的 UI 例如 如果我布局一个具有大编辑字段且其下方有 2 个按钮右对齐的窗口 我会编写以下代码 使用垂直
  • 使用 ASIFormDataRequest 将 json 发送到 php

    我是 iPhone 新手 我正在尝试将 NSMutable 数组转换为 json 字符串 然后使用 request 将此字符串发送到 php 文件 然后使用响应 NSLog 再次打印它 以确保它已成功发送 所以我在viewDidLoad中编
  • 将字符串附加到 IronScheme 中的现有文本文件

    我们正在尝试使用 IronScheme 构建一个日志文件 并且我们已经使用racket 为其编写了代码 它在球拍中工作正常 但 IronScheme 会抛出错误 这是我们目前所拥有的 define write to log lambda w