标签: stdin

Ruby中的STDIN和$ stdin有什么区别?

Ruby有两种引用标准输入的方法:STDIN常量和$stdin全局变量.

除了我可以分配一个不同的IO对象,$stdin因为它不是一个常量(例如在我的孩子中重新定向IO之前),STDIN和之间的区别是$stdin什么?我什么时候应该在我的代码中使用每个?

如果我重新分配$stdin,它会影响STDIN吗?

这也适用于STDOUT/ $stdoutSTDER/ $stderr

ruby stdin

37
推荐指数
1
解决办法
1万
查看次数

Scanf/Printf双变量C.

假设我在C中有以下代码:

double var;
scanf("%lf", &var);
printf("%lf", var);
printf("%f", var);
Run Code Online (Sandbox Code Playgroud)

它从stdin变量'var'读取,然后在stdout'var'中打印两次.我理解你是如何从stdin读取双变量的,但我的问题是:

  1. 为什么你可以用%lf打印双倍?
  2. 为什么你可以用%f打印双倍?
  3. 使用哪一种更好更正确?

c double printf stdin stdout

36
推荐指数
3
解决办法
23万
查看次数

在Kotlin中读取控制台输入

我试图接受来自Kotlin控制台的输入但很难,因为我对语法不太确定.

我从主要开始

fun main(args: Array<String>) {

}
Run Code Online (Sandbox Code Playgroud)

在此之后我应该输入什么?我知道println()并且readline()参与其中但我不知道如何构建它们.

目标:提示用户输入一个数字,输入的数字乘以6,程序将结果返回到控制台显示.

console stdin input kotlin

35
推荐指数
3
解决办法
3万
查看次数

process.stdin流的可读和数据事件之间有什么区别?

说我有

process.stdin.setEncoding('utf8');
var myString = '';
Run Code Online (Sandbox Code Playgroud)

有什么区别

process.stdin.on('readable', function() {
  myString += process.stdin.read();
});
Run Code Online (Sandbox Code Playgroud)

process.stdin.on('data', function(chunk) {
  myString += chunk;
});
Run Code Online (Sandbox Code Playgroud)

如果stdin结束后输入字符串相同,它们会给我相同的myString

每种方法的最佳做法是什么?谢谢

javascript buffer stdin stream node.js

34
推荐指数
1
解决办法
3258
查看次数

为什么我会收到"未处理的异常类型IOException"?

我有以下简单的代码:

import java.io.*;
class IO {
    public static void main(String[] args) {    
       BufferedReader stdIn = new BufferedReader(new InputStreamReader(System.in));    
       String userInput;    
       while ((userInput = stdIn.readLine()) != null) {
          System.out.println(userInput);
       }
    }
}
Run Code Online (Sandbox Code Playgroud)

我收到以下错误消息:

----------
1. ERROR in io.java (at line 10)
    while ((userInput = stdIn.readLine()) != null) {
                        ^^^^^^^^^^^^^^^^
Unhandled exception type IOException
----------
1 problem (1 error)roman@roman-laptop:~/work/java$ mcedit io.java 
Run Code Online (Sandbox Code Playgroud)

有人有什么想法吗?我只是想简化总和网站上给出的代码(这里).我过度简化了吗?

java stdin readline ioexception

33
推荐指数
3
解决办法
16万
查看次数

在批处理文件中读取stdin流

是否可以在批处理文件中使用管道stdin流?

我希望能够将一个命令的输出重定向到我的批处理文件process.bat列表中,这样:

C:\>someOtherProgram.exe | process.bat
Run Code Online (Sandbox Code Playgroud)

我的第一次尝试看起来像:

echo OFF
setlocal

:again
set /p inputLine=""
echo.%inputLine%
if not (%inputLine%)==() goto again

endlocal
:End
Run Code Online (Sandbox Code Playgroud)

当我用type testFile.txt | process.bat它测试时,它会反复打印出第一行.

还有另外一种方法吗?

windows stdin stdout batch-file

33
推荐指数
1
解决办法
3万
查看次数

如何用fgets()从stdin读取?

我写了下面的代码来从终端窗口读取一行,问题是代码陷入无限循环.行/句子的长度是未定义的,因此我计划将其分成几部分读入缓冲区,然后将其连接到另一个字符串,该字符串可以通过realloc相应的方式进行扩展.有人可以发现我的错误或建议更好的方法来实现这个目标吗?

#include <stdio.h>
#include <string.h>

#define BUFFERSIZE 10

int main (int argc, char *argv[])
{
    char buffer[BUFFERSIZE];
    printf("Enter a message: \n");
    while(fgets(buffer, BUFFERSIZE , stdin) != NULL)
    {
        printf("%s\n", buffer);
    }
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

c stdin fgets

31
推荐指数
2
解决办法
18万
查看次数

Python 3:如何指定stdin编码

在将代码从Python 2移植到Python 3时,我在从标准输入读取UTF-8文本时遇到了这个问题.在Python 2中,这很好用:

for line in sys.stdin:
    ...
Run Code Online (Sandbox Code Playgroud)

但Python 3期望来自sys.stdin的 ASCII ,如果输入中有非ASCII字符,我会收到错误:

UnicodeDecodeError:'ascii'编解码器无法解码字节..位置..:序号不在范围内(128)

对于常规文件,我会在打开文件时指定编码:

with open('filename', 'r', encoding='utf-8') as file:
    for line in file:
        ...
Run Code Online (Sandbox Code Playgroud)

但是如何指定标准输入的编码?其他SO帖子建议使用

input_stream = codecs.getreader('utf-8')(sys.stdin)
for line in input_stream:
    ...
Run Code Online (Sandbox Code Playgroud)

但是,这在Python 3中不起作用.我仍然得到相同的错误消息.我正在使用Ubuntu 12.04.2,我的语言环境设置为en_US.UTF-8.

python unicode encoding stdin python-3.x

30
推荐指数
1
解决办法
2万
查看次数

如何从bash提供mysql查询

我正在尝试创建一个创建mysql用户和数据库的bash脚本,但我找不到将sql提供给mysql的方法,我正在尝试使用这种格式:

mysql < echo "query"
Run Code Online (Sandbox Code Playgroud)

但这不起作用,请参阅下面的示例:

mysql --host=localhost --user=user --password=password < echo "CREATE USER 'testuser'@'localhost' IDENTIFIED BY  'jakdJxct8W';
CREATE DATABASE IF NOT EXISTS 'testuser_dev' DEFAULT CHARACTER SET utf8 COLLATE utf8_bin;
GRANT ALL PRIVILEGES ON  'testuser_dev' . * TO  'testuser'@'localhost';
CREATE DATABASE IF NOT EXISTS 'testuser_qa' DEFAULT CHARACTER SET utf8 COLLATE utf8_bin;
GRANT ALL PRIVILEGES ON  'testuser_qa' . * TO  'testuser'@'localhost';"
Run Code Online (Sandbox Code Playgroud)

如何用查询提供mysql?

mysql unix linux bash stdin

29
推荐指数
5
解决办法
5万
查看次数

从stdin读取

read()在Unix中使用系统调用读取用户输入的可能方法是什么.我们如何使用字节逐字节读取stdin read()

c unix stdin

29
推荐指数
2
解决办法
13万
查看次数