首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在Objective-C中从标准输入中读取多字串?

在Objective-C中,可以使用NSFileHandle类来从标准输入中读取多个字符串。

首先,我们需要获取标准输入的文件句柄,可以使用NSFileHandle的类方法fileHandleWithStandardInput来实现:

代码语言:txt
复制
NSFileHandle *inputHandle = [NSFileHandle fileHandleWithStandardInput];

接下来,我们可以使用NSFileHandle的方法readDataToEndOfFile来读取标准输入的数据,然后将其转换为字符串:

代码语言:txt
复制
NSData *inputData = [inputHandle readDataToEndOfFile];
NSString *inputString = [[NSString alloc] initWithData:inputData encoding:NSUTF8StringEncoding];

这样,我们就可以从标准输入中获取到多个字符串了。需要注意的是,这里假设输入的字符串是以UTF-8编码的,如果是其他编码,需要相应地修改encoding参数。

以上是从标准输入中读取多个字符串的基本方法,根据具体的需求,我们可以对读取到的字符串进行进一步的处理和解析。

腾讯云相关产品和产品介绍链接地址:

请注意,以上链接仅供参考,具体产品选择应根据实际需求和情况进行。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • 何在父进程读取子(外部)进程的标准输出和标准错误输出结果

    这个问题,微软以为为我们考虑过了,我们可以从一个API可以找到一些端倪——CreateProcess。...这个API的参数非常,我想我们工程对CreateProcess的调用可能就关注于程序路径(lpApplicationName),或者命令行(lpCommandLine)。...si.cb = sizeof(STARTUPINFO); GetStartupInfo(&si); si.hStdError = hWrite; // 把创建进程的标准错误输出重定向到管道输入...设置标准输出和标准错误输出句柄 si.hStdError = hWrite; // 把创建进程的标准错误输出重定向到管道输入 si.hStdOutput = hWrite...; // 把创建进程的标准输出重定向到管道输入 隐藏CMD控制台 si.wShowWindow = SW_HIDE; 设置有效属性 si.dwFlags = STARTF_USESHOWWINDOW

    3.8K10

    【IOS】IOS开发问题解决方法索引(三)

    假如我们的网页,有一个 id 叫做 “#s” 的文字输入框(text input),而我们希望现在键盘输入的焦点放在这个输入框上,在 JS 里头会这样写: document.querySelector...strcmp(name, "stringValue")){ return NO; } return YES; } 除了可以读取 Objective-C对象的 Value...像前面提到,在这裡传给 Objective-C的 JS 对象,除了字串与数字外,class都是 WebScriptObject,空对象是 WebUndefined。...与js交互 如何在Objective-C的类里面声明私有方法. http://hi.baidu.com/shiqyn/item/52887ff19d3df61aa729885f Objective-C...10 AudioQueue开发——Buffer缓存设置 AudioQueue开发时,需要用到一个缓冲池队列,该队列的预读取只需要一次就行了,不需要放在play方法,只需放在初始化方法中就行。

    89720

    Linux 常用命令 vim常用命令 速查

    grep命令可以指定文件搜索特定的内容,并将含有这些内容的行标准输出。 格式 `grep [options]` 主要参数 [options]主要参数: -c:只输出匹配行的计数。...pattern正则表达式主要参数: /:忽略正则表达式特殊字符的原有含义。 ^:匹配正则表达式的开始行。 $: 匹配正则表达式的结束行。 /<:匹配正则表达式的行开始。...它允许您创建简短的程序,这些程序读取输入文件、为数据排序、处理数据、对输入执行计算以及生成报表,还有无数其他的功能。...-f scripfile or --file scriptfile 脚本文件读取awk命令。...这两个功能是Bell实验室版awk的扩展功能,在标准awk不适用。

    3.6K31

    iOS开发入门笔记

    这篇文档不讲IB,只讲Objective-C,因为: 基本上,每一本讲iOS开发的书(纸质书、电子书),都有大量的截图一步一步教如何用IB开发iOS应用,而讲Objective-C开发应用的书却没有那么...以后再用模拟器运行iOS应用时,点击iOS应用输入框,软键盘就不弹出来了,可直接使用Mac电脑的物理键盘输入。...注意: 模拟器的iOS接管了物理键盘输入,所以,调用的是模拟器iOS的输入法,不是你的Mac电脑的输入法。...打个比方,你的Mac OS装的是搜狗五笔,模拟器iOS加了个拼音输入法(Add New Keyboard),那么,在iOS应用输入中文会调用拼音输入法。...要在模拟器上测试依赖照片的功能,可以在代码里做一个workaround,即当代码检测到摄像头不可用时,弹出一个照片选择器,让测试人员相册里选择一幅照片,来进行后续的操作(照片美化、人脸识别、条码扫描

    3.9K60

    插件,脚本和命令目录

    每个脚本可以包含尽可能的处理程序,并且每个命令都可以由不同的处理程序实现,因此,无论您是按照每个命令安排一个脚本,还是将所有命令处理程序放在单个脚本文件,都由您决定。...基础如下: 你会像往常一样编写JavaScript代码 使用桥接器,您可以主机应用程序(在本例为Sketch)或系统本身获取Objective-C对象 基本的Objective-C对象具有等同的JavaScript...(字符串和数字),通常可以以与JS版本相同的方式使用 您可以像在JS中一样读取和写入自定义Objective-C对象的属性 您可以使用熟悉的JavaScript语法或Objective-C方括号语法来调用自定义...当您的脚本被Sketch调用时,您会传递一些上下文,包括表示当前Sketch文档和选择的Objective-C对象。 然后,您可以读取属性,执行计算并调用这些对象的方法,以完成脚本的目的。...执行该命令将调用onRun脚本的函数,该函数将包含您输入的代码。 从这个起点开始,您可以通过直接编辑文件夹的文件来扩展您的插件。

    92980

    string和stringstream用法详解「建议收藏」

    字串長度 s.length() 或 s.size() strlen(s) 读取一行 getline(cin, s); gets(s); 设成某字串 s=”TCGS”; strcpy...使用stringstream对象简化类型转换 C++标准的提供了比ANSI C的更高级的一些功能,即单纯性、类型安全和可扩展性。...库声明的标准类就利用了这一点,自动选择所必需的转换。而且,转换结果保存在stringstream对象的内部缓冲。你不必担心缓冲区溢出,因为这些对象会根据需要自动分配存储空间。...库是最近才被列入C++标准的。(不要把与标准发布前被删掉的弄混了。)因此,老一点的编译器,GCC2.95,并不支持它。...stream >> result; //stream抽取前面插入的int值 std::cout << result << std::endl; //

    1.3K20

    Objective-c与js交互专题

    ,除了基本字串会转换成 NSString、基本数字会转成 NSNumber,像是 Array 等其他对象,在 Objective-C ,都是 WebScriptObject 这个 Class。...假如我们的网页,有一个 id 叫做 “#s” 的文字输入框(text input),而我们希望现在键盘输入的焦点放在这个输入框上,在 JS 里头会这样写: document.querySelector...的Value 要让网页的 JS 程序可以调用 Objective-C 对象,方法是把某个 Objective-C 对象注册成 JS window 对象的属性。...strcmp(name, "stringValue")) { return NO; } return YES; } 除了可以读取 Objective-C对象的 Value 外,也可以设定 Value...像前面提到,在这裡传给 Objective-C的 JS 对象,除了字串与数字外,class 都是 WebScriptObject,空对象是 WebUndefined。

    1.7K50

    linux 常用命令 杂记

    若不指定任何文件名称或是所给予的文件名为"-", 则cmp指令会标准输入设备读取数据。 5.Linux file命令用于辨识文件类型。 通过file指令,我们得以辨识该文件的类型。...(与 vi 相似), 使用的说明文件,请按 h 。...12.Linux tee命令用于读取标准输入的数据, 并将其内容输出成文件。 tee指令会标准输入设备读取数据, 将其内容输出到标准输出设备,同时保存成文件。...:tee dd.sh 回车后即可输入内容,直到ctrl+C. (个人觉得可以简单的当vim使用,但复杂语句会不能识别。)...: 计算字串长度 expr length “this is a test” 14 抓取第一个字符数字串出现的位置 expr index "sarasara" a 2 17.

    47320

    sed:小工具,大用处

    sed可以处理标准输入内容或者文件,可以输出标准输出或输出到文件。sed的一般使用规则如下: sed -nefri '动作命令' 文件或输入 参数设置: -n:使用安静(silent)模式。...-i:直接修改读取的档案内容,而不是由屏幕输出。 动作命令: a:新增,a后可以接字串,这些字串会在新一行出现(目前的下一行); c:替换,c的后面可以接字串,这些字串可以取代n1、n2之间的行!...d:删除,因为是删除啊,所以d 后面通常不接任何东西; g:全局,表示动作命令在行内全局执行,也即如果行内有多个关键字,全部删除或替换; i:新增,i后可以接字串,这些字串会在新一行出现(目前的上一行)...可以使用“\+回车”来增添多行内容,示例如下: ⑵替换与显示功能 sed的动作命令p可以根据行号显示内容,例如选择显示文件的第5-7行内容: sed的动作命令c可以进行整行内容替换,例如将文件第...表示全局,也即每一行进行全部替换,若不加g则只替换找到的第一个关键字: sed还可以直接处理文件,在文库数据处理时,遇到重复barcode的情况,常需要进行barcode替换,如下所示: 上面的例子第一条表示将替换结果保存为新的文件

    48020

    基础篇-ObjectC继承、类别、属性

    Objective-C,给一个类扩展一个其它方法,有两种实现方式:类别和继承。 ----  继承  这个是面向对象语言都有的一个特性,子类会继承父类的方法和属性以及成员变量。 ...在 .h 声明成员变量,又不想被子类调用,可以对这个成员变量进行限定: { @private NSMutableArray*modelArray; } @private 私有成员,只有当前类可以访问...在声明property属性后,有2种实现选择 @synthesize  作用是实现属性的,getter,setter方法....atomic    是Objc使用的一种线程保护技术,基本上来讲,是防止在写未完成的时候被另外一个线程读取,造成数据错误。...所以,如果一般情况下,我们都不希望字串的值跟着str变化,所以我们一般用 copy 来设置string的属性。如果希望字串的值跟着赋值的字串的值变化,可以使用 strong,retain。

    1.9K10

    【Linux】【实战系列】10 分钟掌握日常开发 Linux 文本与文件处理命令

    文本查看和处理catcat(英文全拼:concatenate)命令用于连接文件并打印到标准输出设备上。...,劝大家少用// 在类 Unix 系统,/dev/null 称空设备,是一个特殊的设备文件,它丢弃一切写入其中的数据(但报告写入操作成功),读取它则会立即得到一个 EOF。...10 行数据,可以使用 -n 指定行数tail -n 20 log.txt // 读取文件末尾 20 行数据tail -n +20 log.txt // 读取 20 行开始到末尾的数据// 这里推荐一个缩写的写法...当然我们可以使用 tail 读取,那么你要读取的数据也太多了,我们可以使用 head 实现命令格式:head [参数] [文件]// 默认读取文件前 10 行数据head log.txt常用参数:-c...(pattern),然后字串之后开始显示+num 第 num 行开始显示fileNames 欲显示内容的文档,可为复数个数// 比如我们读取文件 log.txt 第 5 行开始显示 一次显示 10

    20520

    linux`操作文本的三大利器

    awk参数 -F 指定输入文件折分隔符,-F: -v 赋值一个用户定义变量,-va=1 -f 脚本文件读取awk命令 注:只列举最常用的参数 分隔符 每行按空格分割列,并输出第1、3列 $ awk...="nmask,nmask" {print}' 内建变量 NR参数:输出行号 cat test.log | awk '{print NR,$1,$2,$3}' 正则表达式 输出第二列包含nm开头的所有记录...参数 -e 以选项中指定的script来处理输入的文本文件。 -f 以选项中指定的script文件来处理输入的文本文件。 -h 显示帮助。 -n 仅显示script处理后的结果。...动作 a :新增, a 的后面可以接字串,而这些字串会在下一行出现 i :插入, i 的后面可以接字串,而这些字串会在上一行出现 c :取代, c 的后面可以接字串,这些字串可以取代 n1,n2 之间的行... s/old/new/g 插入操作 在test.log文件的第3行后插入一行,内容为nmask sed -e 3a\nmask test.log 删除操作 删除test.log的第2行、第3行数据 cat

    1.5K20

    go: 将字符串转换为数字串的便捷方法

    本文将详细讲解如何在Go语言中实现这一转换过程,并探讨其潜在用途和注意事项。 1. 字符、字节和数字的关系 字符: 在计算机,字符是文本的基本单元,英文的'a'或中文的''。...数字串: 数字串是一系列数字的序列,可以表示更复杂的数据结构。 2. 字符转换为字节 在Go语言中,字符串是由字节组成的。...字节转换为数字串 一旦我们有了字节切片,我们可以将其转换为数字串。...for _, b := range bytes { numberString += fmt.Sprintf("%d", b) } 这段代码遍历字节切片,将每个字节转换为数字,并将其添加到数字串...系统接口: 一些系统接口可能需要数字输入,将字符串转换为数字串可以简化这一过程。 6. 注意事项 编码问题: 不同的字符编码会影响转换结果。 性能考量: 对于大量数据的转换,考虑性能和效率是重要的。

    23910

    使用ChatGPT-4优化编程效率:高效查询代码示例和解决方案

    例如,你可以输入类似这样的问题:“如何在Go实现一个卷积算法?”...如何在C++创建一个线程安全的单例? 在React,如何实现组件的状态管理? 请展示如何在SQL中进行左连接操作。 如何在Django设置一个的关系?...如何在MongoDB实现聚合查询? 我如何在HTML嵌入一个YouTube视频? 如何在CSS实现响应式设计? 在Bash脚本,如何读取文件的每一行?...在R,如何实现线性回归? 怎样在VBAExcel读取数据? 请展示如何在ASP.NET MVC实现CRUD操作。 在JavaScript,如何实现继承? 如何在CSS实现动画效果?...如何在Visual Studio Code设置Python环境? 在HTML,如何创建一个响应式导航栏? 怎样在Objective-C处理异常? 如何在WordPress创建一个自定义主题?

    25310

    Objective-C 的运行时中最具争议的黑魔法:Method Swizzling

    继承是另一种可行的方式,但是这要求所有被继承的视图控制器 UIViewController, UITableViewController, UINavigationController 都在 viewDidAppear...幸运的是,这里有另外一种可行的方式: category 实现 method swizzling 。下面是实现方式: 计算机科学里,交换指针指向用来交换基于名字或者位置的指针引用。...该方法为当前CPU架构使用标准的C方法调用来实现。该方法的第一个参数指向调用方法的自身(即内存类的实例对象,若是调用类方法,该指针则是指向元类对象metaclass)。...然而采取了以下预防措施后, method swizzling 会变得很可靠: 在交换方法实现后记得要调用原生方法的实现(除非你非常确定可以不用调用原生方法的实现):APIs 提供了输入输出的规则,而在输入输出中间的方法实现就是一个看不见的黑盒...持续的预防:不管你对你理解 swlzzling 框架,UIKit 或者其他内嵌框架有自信,一定要记住所有东西在下一个发行版本都可能变得不再好使。

    44110
    领券