zoukankan      html  css  js  c++  java
  • How to convert a String to Stream

    How do you convert a String object to Stream (type) object?

    I know it is more common to do the conversion in the other direction, but for me it is definitely the other way.

    I have a web service input parameter of type string.  This parameter is actually an xml document payload. Why this is so is a long story.

    Anyway, I need to validate it.  I've written xml validation code in the past.  The one real stumbling block here isd this data type conversion.

    I'm at a bit of a loss how to do this.  Ultimately I need to get the data into an XmlReader object coupled with the XmlReadersettings object (this is a .net 2.0 asp.net app).  Looking at the object model for various System.XML namespace objects this does not appear to be a straightforward task.

    Short of writing the string to disk and then opening it up with a FileStream object,there's got to be a better way.  Anyone have a better idea?

    Thanks!
    Mr Bungle Send private email
    Tuesday, July 18, 2006
     
     
    Implement a class derived from stream, i.e. declare a StringStream class, use your string to construct it, and implement the various abstract methods declared in Stream such as Read and CanWrite.
    Christopher Wells Send private email
    Tuesday, July 18, 2006
     
     
    Use the StringReader class, e.g.

    string xmlText = ... your XML ...;
    XmlReaderSettings settings = ... your settings ...;

    StringReader stringReader = new StringReader(xmlText);
    XmlTextReader xmlReader = XmlReader.Create(stringReader, settings);
    ...
    Joe
    Wednesday, July 19, 2006
     
     
    There is also the MemoryStream object, convert your string into an array of bytes and write directly into the memorystream.

    MemoryStream memStream = new MemoryStream();
    byte [] data = Encoding.Unicode.GetBytes(theString);
    memStream.Write(data, 0, data.Length);
    Foxedup
    Wednesday, July 19, 2006
     
     
    The System.IO.StringReader object worked like a charm and just required a single line of additional code.  What a relief! Thanks for all the helpful replies.
    Mr Bungle Send private email
    Wednesday, July 19, 2006
     
     

    This topic is archived. No further replies will be accepted.

  • 相关阅读:
    Android平台架构及特性
    MySQL 数据库性能优化之索引优化
    排序自己总结
    存储过程中“ 警告: 聚合或其他 SET 操作消除了 Null 值” 导致错误的解决
    存储过程的output及return的区别
    如果ssh端口转发时候g没有效果解决方案
    sql语句显示复选内容, indication 为复选框的累计value(整数),显示所有的
    kprfakesu.c Linux su密码欺骗 源码
    Unix/Linux上的后门技术和防范
    iis7应用程序池经常自动停止如何解决?
  • 原文地址:https://www.cnblogs.com/huqingyu/p/844918.html
Copyright © 2011-2022 走看看