Solved

String or STring Array?

Posted on 2013-06-24
9
417 Views
Last Modified: 2013-06-24
I am doing an HTTP Request and

This code below outputs the StreamResponse in a StreamReader

In a Debug.WriteLile it looks like regular XML

So...
Is outputdata a string or an array?

Dim outputData As New [String](readBuff, 0, count)

THis is what outputs in a Debug.WriteLine
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<org.m5.api.v1.Response xmlns:m5="http://www.m5net.com/org/m5/data/v2/cti" xmlns:csta="http://www.ecma-international.org/standards/ecma-323/csta/ed5">
    <ErrorCount>0</ErrorCount>
    <Id>1</Id>
</org.m5.api.v1.Response>
0
Comment
Question by:lrbrister
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 4
9 Comments
 
LVL 42

Expert Comment

by:sedgwick
ID: 39271456
can u post the whole code please?
btw, if u use ReadToEnd() of the StreamReader, u gonna get the whole xml as a string.
for example:
Dim response As WebResponse = webRequest.GetResponse()
Dim responseStream As Stream = response.GetResponseStream()
Dim responseReader As New StreamReader(responseStream)
Dim responseString As String = responseReader.ReadToEnd()

Open in new window

0
 

Author Comment

by:lrbrister
ID: 39271497
Sedgwick

here you go
The part in question is
Dim outputData As New [String](readBuff, 0, count)



Dim streamResponse As Stream = myHttpWebResponse.GetResponseStream()
 While streamResponse.CanRead
	Dim streamRead As New StreamReader(streamResponse)
 	Dim readBuff(2560) As [Char]
	Dim count As Integer = streamRead.Read(readBuff, 0, 2560)
	Dim line As String = ""
	Debug.WriteLine(ControlChars.Cr + "Characters Returned " + CStr(count))
	If count = 0 Then
		GoTo Resend
	Else
		Dim outputData As New [String](readBuff, 0, count)
		Debug.WriteLine(ControlChars.Cr + "The contents of the returned data are :  ")
 		Debug.WriteLine(ControlChars.Cr + outputData + vbCrLf)
                 
	End If
 End While

Open in new window

0
 
LVL 42

Expert Comment

by:sedgwick
ID: 39271531
try this:
Dim streamResponse As Stream = myHttpWebResponse.GetResponseStream()
Dim responseReader As New StreamReader(streamResponse)
Dim responseString As String = responseReader.ReadToEnd()
Debug.WriteLine(ControlChars.Cr + "The contents of the returned data are :  ")
Debug.WriteLine(ControlChars.Cr + responseString + vbCrLf)

Open in new window

0
Salesforce Made Easy to Use

On-screen guidance at the moment of need enables you & your employees to focus on the core, you can now boost your adoption rates swiftly and simply with one easy tool.

 
LVL 83

Expert Comment

by:CodeCruiser
ID: 39271557
>Is outputdata a string or an array?

You are creating a new instance of string from a byte array so its a string.
0
 

Author Comment

by:lrbrister
ID: 39271569
sedgewick,
  Huh?

My code works.
I just want to know if that's an array?
0
 
LVL 42

Accepted Solution

by:
sedgwick earned 500 total points
ID: 39271594
i know it works, just saying u dont need to read chunks from the response u can read to the end of the stream.

for your question, outputData  is string not an array,
0
 

Author Comment

by:lrbrister
ID: 39271616
sedgeweck

I'm getting it back in chunks from the ResponseSTream
0
 
LVL 42

Expert Comment

by:sedgwick
ID: 39271674
ok, didn't know that.
hope i was helpful anyway.
cheers
0
 

Author Closing Comment

by:lrbrister
ID: 39271698
That's what I wanted. Thanks
0

Featured Post

Major Incident Management Communications

Major incidents and IT service outages cost companies millions. Often the solution to minimizing damage is automated communication. Find out more in our Major Incident Management Communications infographic.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

A theme is a collection of property settings that allow you to define the look of pages and controls, and then apply the look consistently across pages in an application. Themes can be made up of a set of elements: skins, style sheets, images, and o…
Entering time in Microsoft Access can be difficult. An input mask often bothers users more than helping them and won't catch all typing errors. This article shows how to create a textbox for 24-hour time input with full validation politely catching …
This is Part 3 in a 3-part series on Experts Exchange to discuss error handling in VBA code written for Excel. Part 1 of this series discussed basic error handling code using VBA. http://www.experts-exchange.com/videos/1478/Excel-Error-Handlin…
Finds all prime numbers in a range requested and places them in a public primes() array. I've demostrated a template size of 30 (2 * 3 * 5) but larger templates can be built such 210  (2 * 3 * 5 * 7) or 2310  (2 * 3 * 5 * 7 * 11). The larger templa…

742 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question