|
If you want it to be as slow as possible, then by all means do math with strings.
|
|
|
|
|
There isn't one. You have to write it yourself.
|
|
|
|
|
AFAIK there is no built in function to do this.
It would be fairly easy to write your own, though.
Assuming an 11 character string. One way would be to reverse the string and then create a new string from the last 10 characters of the original + the last character of the reversed string.
There are loads more ways though.
Henry Minute
Do not read medical books! You could die of a misprint. - Mark Twain
Girl: (staring) "Why do you need an icy cucumber?"
“I want to report a fraud. The government is lying to us all.”
|
|
|
|
|
Here's a hint:
str.Substring(shiftAmount) + str.Substring(0, shiftAmount);
Do you really think it would be that hard to implement this yourself?
|
|
|
|
|
it is very good idea
it has never crossed my mind ,it so easy and so small
i do this
public static String CircularShift(string Subject, int Count)
{
int l = Subject.Length;
char[] text = new char[l];
for (int i = 0; i < l; i++)
{
text[i] = Subject[(i + Count) % l];
}
String output = "";
for (int i = 0; i < l; i++)
{
output += text[i];
}
return output;
}
but i will use your idea .
thank you very much.
an thx for every one who trying to help .
modified on Sunday, November 14, 2010 1:36 PM
|
|
|
|
|
please stop using confusing single-character identifiers such as this one:
l
which could be a letter or a digit depending on the font that is used to display it.
BTW: Most letters (such as i and n) are OK, however "L".ToLower() sure is not.
|
|
|
|
|
You're right , really i can't found different between l and 1 in VS2008 it is the same
Usually i used letter such as i j x y
any way thx for your advice
|
|
|
|
|
That'll blow up if the shiftAmount is out of range. Plus I prefer to allow negative values to specify a shift in the other direction...
shiftAmount %= str.Length ;
if ( shiftAmount < 0 ) shiftAmount += str.Length ;
|
|
|
|
|
That is why it was a hint and not a solution. I generally avoid giving full solutions when the solution is so easy that the OP should be able to figure it out.
|
|
|
|
|
|
i try to upload image to PHP server but still have problem
when i access url direct
http://images3.souq.com/upload_pict_url.php
i can send image
please HELP >>>>
<br />
private void button1_Click(object sender, EventArgs e)<br />
{<br />
HttpWebResponse response;<br />
Stream resStream;<br />
StreamReader objSR;<br />
CookieContainer cookieContainer = new CookieContainer();<br />
ASCIIEncoding encoding = new ASCIIEncoding();<br />
HttpWebRequest request;<br />
string sResponse;<br />
string postData;<br />
string UrlLogin;<br />
<br />
<br />
try<br />
{<br />
UrlLogin = "http://images3.souq.com/upload_pict_url.php";<br />
string uploadfile = "C:\\fax\\pics\\7130570.jpg";<br />
string fileFormName = "userfile";<br />
string contenttype = "image/jpeg";
<br />
request = (HttpWebRequest)WebRequest.Create(UrlLogin);<br />
request.KeepAlive = true;<br />
request.CookieContainer = cookieContainer;<br />
string boundary = "----------" + DateTime.Now.Ticks.ToString("x");<br />
request.ContentType = "multipart/form-data; boundary=" + boundary;<br />
request.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)";<br />
request.Method = "POST";<br />
request.AllowAutoRedirect = true;<br />
<br />
StringBuilder sb = new StringBuilder();<br />
<br />
string name1 = "wm_flag";<br />
string value1 = "0";<br />
<br />
sb.Append("--");<br />
sb.AppendLine(boundary);<br />
sb.AppendLine(string.Format("Content-Disposition: form-data; name=\"{0}\"", name1));<br />
sb.AppendLine();<br />
sb.AppendLine(value1);<br />
<br />
sb.Append("--"); sb.Append(boundary); sb.Append("\r\n"); sb.Append("Content-Disposition: form-data; name=\""); sb.Append(fileFormName); sb.Append("\"; filename=\"");<br />
sb.Append(Path.GetFileName(uploadfile)); sb.Append("\""); sb.Append("\r\n"); sb.Append("Content-Type: "); sb.Append(contenttype); sb.Append("\r\n"); sb.Append("\r\n");<br />
string postHeader = sb.ToString();<br />
byte[] postHeaderBytes = Encoding.UTF8.GetBytes(postHeader);<br />
<br />
byte[] boundaryBytes = Encoding.ASCII.GetBytes("\r\n--" + boundary + "\r\n");<br />
<br />
FileStream fileStream = new FileStream(uploadfile, FileMode.Open, FileAccess.Read);<br />
long length = postHeaderBytes.Length + fileStream.Length + boundaryBytes.Length;
request.ContentLength = length;<br />
<br />
Stream requestStream = request.GetRequestStream();<br />
requestStream.Write(postHeaderBytes, 0, postHeaderBytes.Length);<br />
byte[] buffer = new Byte[checked((uint)Math.Min(4096, (int)fileStream.Length))];<br />
int bytesRead = 0;<br />
while ((bytesRead = fileStream.Read(buffer, 0, buffer.Length)) != 0)<br />
requestStream.Write(buffer, 0, bytesRead);<br />
requestStream.Write(boundaryBytes, 0, boundaryBytes.Length);<br />
<br />
response = (HttpWebResponse)request.GetResponse();<br />
resStream = response.GetResponseStream();<br />
objSR = new StreamReader(resStream);<br />
sResponse = objSR.ReadToEnd();<br />
}<br />
catch (Exception x) { }<br />
}<br />
<br />
Palestine
|
|
|
|
|
|
it's different problem please see it ..
Palestine
|
|
|
|
|
hello i have an array with 100 entries.
currently i would want to extract the values between [] and assign it to a listbox for all the 100 entries.
i tried using the code as shown below however it don't seems to be working. Needing help!
<br />
string[] array = new string[listBox2.Items.Count];<br />
<br />
for (int i = 0; i < listBox2.Items.Count; i++)<br />
{<br />
string input = array.ToString();<br />
int start = input.IndexOf("[");<br />
int stop = input.IndexOf("]");<br />
string output = input.Substring(start + 1, stop - start - 1);<br />
listBox3.Items.Add(output);<br />
<br />
}<br />
|
|
|
|
|
What do you expect that to do?
What kind of string to you expect from
string input = array.ToString(); What you will get is: "System.String[]"
Try using a regex: it's a lot cleaner and won't throw an exception if the input is "hello ] there [ tester":
public static Regex regex = new Regex("(?<=\\[).*(?=\\])", RegexOptions.Multiline | RegexOptions.Compiled);
...
foreach (ListViewItem lvi in listView2.Items)
{
listView3.Items.Add(regex.Match(lvi.Text).Value);
}
Real men don't use instructions. They are only the manufacturers opinion on how to put the thing together.
|
|
|
|
|
thank you for the suggestion
string input = array.ToString(); -> refers to the array.
cos i want to extract the values between [] for all the arrays and assign them into a listbox.
|
|
|
|
|
Yes, I know that. But if you do:
string inp = "hello,there,this,is,a,test,string";
string[] arr = inp.Split(',');
Console.WriteLine(arr.ToString()); You will get printed "System.String[]"
Calling ToString on an array of strings returns the type of the array, rather than the content.
string input = array.ToString(); Assigns the string "System.String[]" to the variable "input".
Real men don't use instructions. They are only the manufacturers opinion on how to put the thing together.
|
|
|
|
|
okay is there any tutorials i can refer to? thank you so much
|
|
|
|
|
Probably loads! But since I haven't had to learn C# for a long time, I couldn't tell you where to look! Try google, and read a copy of the Yellow Book - free from here[^] - it is written for 1st Year IT students.
What are you trying to achieve?
Real men don't use instructions. They are only the manufacturers opinion on how to put the thing together.
|
|
|
|
|
Let me recommend you this book[^]. A forum like this is good for solving concrete problems, but it seems you still have a lot to learn, and giving you the things done will not help you to learn.
|
|
|
|
|
"understand that it targets experienced software professionals and/or students of computer science"
May be a little advanced for him - I think a beginners C# might be a better approach.
Real men don't use instructions. They are only the manufacturers opinion on how to put the thing together.
|
|
|
|
|
btw i am a she not a he.
thanks anyway
|
|
|
|
|
If I upset you, I apologise sincerely.
You can't tell on t'interweb what gender anyone is, so the convention is to assume the masculine if not known. Otherwise we would have to use gender neutral pronouns (which don't exist in English for a singular subject), and we end up trying to say "might be a little advanced for it" rather than "might be a little advanced for him" or "might be a little advanced for her". Which would upset some people even more! Some days, you can't win with English...
Have a look here: Can one avoid sexist writing?[^]
Real men don't use instructions. They are only the manufacturers opinion on how to put the thing together.
|
|
|
|
|
I think you're right. Now that you mention it, I published a beginners C# about 8 or 10 years ago on the Internet, but it is in Spanish language. Here is the link[^] anyway.
|
|
|
|
|