vbscript - VBS InputBox,无文件扩展名的输出
问题描述
我有两个提示,应该由用户填写。
目标是,用户填写两个提示,输出应该得到两者的组合作为文件名。
例如,用户在第一个 InputBox 中键入“Ryan”,在第二个 InputBox 中键入“Smith”。因此,输出应该是一个名为“Ryan_Smith”的文件,但没有文件扩展名。
目前它保存在“edit.txt”输出文件中,因为我不知道如何按照我的意愿完成它。
Sub MyInputBox()
Do
firstNameInput = InputBox("First Name")
Loop Until firstNameInput <> ""
Do
lastNameInput = InputBox("Second Name")
Loop Until lastNameInput <> ""
RootFolder = Ws.ExpandEnvironmentStrings("%USERPROFILE%\Desktop")
MyFile = RootFolder & "\Edit.txt"
Set fso = CreateObject("Scripting.FileSystemObject")
Set fileStream = fso.OpenTextFile(MyFile,ForAppending,True)
fileStream.WriteLine "First Name: " & firstNameInput
fileStream.WriteLine "Second Name: " & lastNameInput
fileStream.WriteLine String(30,"*")
fileStream.Close
End Sub
Function DblQuote(Str)
DblQuote = Chr(34) & Str & Chr(34)
End Function
解决方案
您可以将CreateTextFile用于您的目的。
例如:
Sub MyInputBox()
dim WshShell, firstNameInput, lastNameInput, fso, fileStream, MyFile, RootFolder
set WshShell = WScript.CreateObject("WScript.Shell")
Do
firstNameInput = InputBox("First Name")
Loop Until firstNameInput <> ""
Do
lastNameInput = InputBox("Second Name")
Loop Until lastNameInput <> ""
RootFolder = WshShell.ExpandEnvironmentStrings("%USERPROFILE%\Desktop")
MyFile = RootFolder & "\" & firstNameInput & "_" & lastNameInput
' ^------------------------------------^----- Notice this filename creation
Set fso = CreateObject("Scripting.FileSystemObject")
Set fileStream = fso.CreateTextFile(MyFile)
fileStream.Close
set WshShell = nothing
set fso = nothing
set fileStream = nothing
End Sub
call MyInputBox()
推荐阅读
- powerbi - 按组 PowerBI 获取聚合的聚合
- python - 如何从 Python 中的 ThreadPoolExecutor 进程返回列表
- python - psycopg2 copy_to 表的一部分
- apache-spark - 如何正确触发 partitionBy/bucketBy?
- python - 获取 N 个向量和一个参考数组之间的差异
- javascript - 尝试使用 javascript 和 DOM 操作通过用户输入创建网格
- r - 使用循环替换单词并运行多行
- sql - 在给定日期范围内每天计算设备数量
- python - Django 迁移未应用于数据库
- database - 使用 psql 导入权限被拒绝