标签: stream

从不知道要多少期待的流中读取[c#]

当我事先不知道会有多少数据进入时,如何从流中读取?现在我只选了一个偏高的数字(如下面的代码所示),但不能保证我不会得到更多.

所以我在循环中一次读取一个字节,每次调整数组大小?听起来太大了调整: - /

TcpClient tcpclnt = new TcpClient();
tcpclnt.Connect(ip, port);

Stream stm = tcpclnt.GetStream();

stm.Write(cmdBuffer, 0, cmdBuffer.Length);

byte[] response = new Byte[2048];
int read = stm.Read(response, 0, 2048);

tcpclnt.Close();
Run Code Online (Sandbox Code Playgroud)

c# arrays stream

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

C#位图图像,字节数组和流!

我有一个函数将文件提取到字节数组(数据).

        int contentLength = postedFile.ContentLength;
        byte[] data = new byte[contentLength];
        postedFile.InputStream.Read(data, 0, contentLength);
Run Code Online (Sandbox Code Playgroud)

后来我使用这个字节数组来构造一个System.Drawing.Image对象(其中data是字节数组)

       MemoryStream ms = new MemoryStream(data);
       Image bitmap = Image.FromStream(ms);
Run Code Online (Sandbox Code Playgroud)

我得到以下异常"ArgumentException:参数无效."

原始发布的文件包含500k jpeg图像...

任何想法为什么这不起作用?

注意:我向你保证我有一个有效的理由转换为字节数组然后转换为内存流!!

c# arrays byte image stream

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

在c#中过滤流

在c#中逐行过滤流/阅读器的最简单方法是什么(有点像将sed放在管道中间).我想将iCalendar文件提供给DDay.iCal,但DDay.iCal在"VERSION:5.1.1"上死亡,因为它需要一个数字或数字SEMICOLON编号(其中数字是数字(DOT数字)?所以最后一个"."是意外).

我想要做的是过滤VERSION:行到像"VERSION:5.1"这样无害的东西,这样解析器就不会死了.

更新:好的,这是一个示例:

BEGIN:VCALENDAR
PRODID:-//SunONE/Calendar Hosting Server//EN
METHOD:PUBLISH
VERSION:5.1.1
X-NSCP-CALPROPS-LAST-MODIFIED:20011208T005613Z
X-NSCP-CALPROPS-CREATED:20010913T223336Z
X-NSCP-CALPROPS-READ:999
X-NSCP-CALPROPS-WRITE:999
Run Code Online (Sandbox Code Playgroud)

现在,DDay.iCal解析器不喜欢"VERSION:5.1.1",所以我想用像"VERSION:5.1"这样无害的东西替换它.

解析器接口使用读取器或流.

无论如何,我试图在这里使用代码并且它可以工作(在过滤的ReadLine之上重新实现TextReader).

c# icalendar stream

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

.NET从Textbox填充StreamReader

我想解析streamReader中的用户输入.我的代码是:

string  txt = txtin.text ; //<~~ txtin is something like root:x:1:1....

using (TextReader reader = new TextReader( txt))
{
    string line = "";
    while ((line = reader.ReadLine()) != null)
    {
        string userName = line.Substring(0, line.IndexOf(':'));
    }
}
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

无法创建抽象类或接口'System.IO.TextReader'的实例

c# string stream

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

如何限制从Socket通过ObjectInputStream读取的最大大小?

有没有办法限制从java中的ObjectInputStream读取的最大缓冲区大小?

如果很明显有问题的对象是恶意巨大的,那么我想停止反序列化.

当然,有ObjectInputStream.read(byte [] buf,int off,int len),但我不想受到分配的性能损失,比如byte [1000000].

我在这里错过了什么吗?

java sockets serialization stream

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

Python中有FileIO吗?

我知道Python中有一个StringIO流,但是在Python中有这样的文件流吗?还有更好的方法让我查看这些东西吗?文件等......

我试图将"流"传递给我制作的"作家"对象.我希望我可以将文件句柄/流传递给这个编写器对象.

python file-io stream

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

c中的匿名流

我可以在c中创建一个匿名流吗?我不想在文件系统上创建一个新文件,只需要一个函数可以写入的流,而另一个函数可以从它传播.不是c ++,c.

c stream

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

流和c ++ - 解析文件

我之前做过......但我忘记了.我有一个包含一些数据的文件:

0.5 0.6 0.7 1.2 1.5

如何在c ++中阅读?我用流做了...类似于:

float var = 0;
stream >> var;
Run Code Online (Sandbox Code Playgroud)

c++ parsing stream

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

C++中的网络协议对象序列化

我正在编写一些必须通过TCP/IP发送数据的C++代码.我希望这段代码可以在Linux/Windows/Osx上移植.现在,因为这是我第一次编写便携式网络代码,我基本上需要一些简单的函数来添加到某些对象,如:

class myclass{

...member...

public:

  string serialize(){
    std::ostringstream out();
    out << member1;
    out << member2;
    out << member3;
    return out.str();
  }

}
Run Code Online (Sandbox Code Playgroud)

......这就是我现在所需要的一切.无论如何,我开始阅读ostringstream相关的文档,并结果发现二进制/文本问题.事实上,它会将换行符转换为everysystem的正确顺序.例如,假设一个成员是一个指向const char*foo ="Hello \nMan \n"的指针,它将在linux上以某个字节顺序翻译,另一个在Windows上翻译......依此类推.我的字节将去一个数据包在互联网上,不同的操作系统的机器会读他们,我想麻烦会occurr ......现在我读,我可能会初始化ostringstreamostringstream(ios::bin)...它会解决这个问题(前提是我将使用反序列化功能,将使用istringstream(ios::bin)???我对整个图片感到困惑,如果你可能花费一些澄清线,将非常感激.

谢谢.

c++ networking cross-platform stream

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

简单的C++文件流

我想读取然后将文件的内容存储在数组中,但这不起作用:

#include <iostream>
#include <fstream>
#include <string>
using namespace std;

int main () {
    string content,line,fname;
    cout<<"Execute: ";
    cin>>fname;
    cin.ignore();
    cout<<endl;
    //Doesn't work:
    ifstream myfile(fname);
    if(!myfile.is_open()){
        cout<<"Unable to open file"<<endl; 
    }else{
        while(!myfile.eof()){
            getline(myfile,line);
            //I don't know how to insert the line in the string
        }
        myfile.close();
    }
    cin.get();

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

c++ file stream

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

标签 统计

stream ×10

c# ×4

c++ ×3

arrays ×2

byte ×1

c ×1

cross-platform ×1

file ×1

file-io ×1

icalendar ×1

image ×1

java ×1

networking ×1

parsing ×1

python ×1

serialization ×1

sockets ×1

string ×1