Search Results

Search found 55276 results on 2212 pages for 'eicar test string'.

Page 13/2212 | < Previous Page | 9 10 11 12 13 14 15 16 17 18 19 20  | Next Page >

  • String from Httpresponse not passing full value.

    - by Shekhar_Pro
    HI i am in desperate need for help here, I am making a web request and getting a json string with Response.ContentLenth=2246 but when i parse it in a string it gives only few 100 characters, i traked it down that it is only getting values less than 964. strings length is still 2246 but remaining values are just (\0) null characters. Its also giving an error Unterminated string passed in. (2246): at following line FacebookFeed feed = sr.Deserialize<FacebookFeed>(data); It works fine if the response stream contains characters less than 964 chars. Following is the extract from the full code error encountered in last line. System.Web.Script.Serialization.JavaScriptSerializer sr = new System.Web.Script.Serialization.JavaScriptSerializer(); System.Net.HttpWebRequest req = (System.Net.HttpWebRequest)System.Net.HttpWebRequest.Create(@"https://graph.facebook.com/100000570310973_181080451920964"); req.Method = "GET"; System.Net.HttpWebResponse res = (System.Net.HttpWebResponse)req.GetResponse(); byte[] resp = new byte[(int)res.ContentLength]; res.GetResponseStream().Read(resp, 0, (int)res.ContentLength); string data = Encoding.UTF8.GetString(resp); FacebookFeed feed = sr.Deserialize<FacebookFeed>(data); error given is Unterminated string passed in. (2246): {"id":"100000570310973_1810804519209........ (with rest of data in the string data including null chars) following is the shape of classes used in my code: public class FacebookFeed { public string id { get; set; } public NameIdPair from { get; set; } public NameIdPair to { get; set; } public string message { get; set; } public Uri link{get;set;} public string name{get; set;} public string caption { get; set; } public Uri icon { get; set; } public NameLinkPair[] actions { get; set; } public string type { get; set; } public NameIdPair application { get; set; } //Mentioned in Graph API as attribution public DateTime created_time { get; set; } public DateTime updated_time { get; set; } public FacebookPostLikes likes { get; set; } } public class NameIdPair { public string name { get; set; } public string id { get; set; } } public class NameLinkPair { public string name { get; set; } public Uri link{get; set;} } public class FacebookPostLikes { public NameIdPair[] data { get; set; } public int count { get; set; } }

    Read the article

  • Write Parcelable for ArrayList<String []> in android?

    - by sugan.s
    I just created model with String array and array list of string array.Like this public class LookUpModel implements Parcelable { private String [] lookup_header; private ArrayList<String []> loookup_values; public void writeToParcel(Parcel dest, int flags) { dest.writeStringArray(getLookup_header()); }; } I have implemented parcelbale then write for String [] but how to do for the ArrayList<String []> and that values need to pass to another activity.Thanks in advance.

    Read the article

  • How to Convert Boolean to String

    - by tag
    I have a boolean variable which I want to convert to a string $res = true; I need it the converted value to also be in the format "true" "false" not "0" "1" $converted_res = "true"; $converted_res = "false"; I've tried: $converted_res = string($res); $converted_res = String($res); but it tells me string and String are not recognized functions. How do I convert this boolean to a string in the format "true" or "false" in php?

    Read the article

  • How to remove characters from a string?

    - by masato-san
    Hi, Below is interview question so you cannot relay on the functions that predefined in libraries. Also my answer below set the element to null but there is another ways to solve the problem. Given string $string = "This is a pen", remove "is" so that return value is "Th a pen" (including whitespece). I've tried (shown below) but returned value is not correct. Thanks in advance! function remove_delimiter_from_string(&$string, $del) { for($i=0; $i<strlen($string); $i++) { for($j=0; $j<strlen($del); $j++) { if($string[$i] == $del[$j]) { $string[$i] = $string[$i+$j]; //this grabs delimiter :( } } } echo $string . "\n"; }

    Read the article

  • How to get N random string from a {a1|a2|a3} format string?

    - by Pentium10
    Take this string as input: string s="planets {Sun|Mercury|Venus|Earth|Mars|Jupiter|Saturn|Uranus|Neptune}" How would I choose randomly N from the set, then join them with comma. The set is defined between {} and options are separated with | pipe. The order is maintained. Some output could be: string output1="planets Sun, Venus"; string output2="planets Neptune"; string output3="planets Earth, Saturn, Uranus, Neptune"; string output4="planets Uranus, Saturn";// bad example, order is not correct Java 1.5

    Read the article

  • Boost.Test: Looking for a working non-Trivial Test Suite Example / Tutorial

    - by Robert S. Barnes
    The Boost.Test documentation and examples don't really seem to contain any non-trivial examples and so far the two tutorials I've found here and here while helpful are both fairly basic. I would like to have a master test suite for the entire project, while maintaining per module suites of unit tests and fixtures that can be run independently. I'll also be using a mock server to test various networking edge cases. I'm on Ubuntu 8.04, but I'll take any example Linux or Windows since I'm writing my own makefiles anyways.

    Read the article

  • Specify test method name prefix for test suite in junit 3

    - by Marko Kocic
    Is it possible to tell JUnit 3 to use additional method name prefix when looking up test method names? The goal is to have additional tests running locally that should not be run on continuous integration server. CI server doesn't use test suites, it look up for all classes which name ends with "Test" and execute all methods that begins with "test". The goal is to be able to locally run not only tests run by integration server, but also tests which method name starts with, for example "nocitest" or something like that. I don't mind having to organize tests into tests suite locally, since CI is just ignoring them.

    Read the article

  • Matching String.

    - by Harikrishna
    I have a string String mainString="///BUY/SELL///ORDERTIME///RT///QTY///BROKERAGE///NETRATE///AMOUNTRS///RATE///SCNM///"; Now I have another strings String str1= "RT"; which should be matched only with RT which is substring of string mainString but not with ORDERTIME which is also substring of string mainString. String str2= "RATE" ; And RATE(str2) should be matched with RATE which is substring of string mainString but not with NETRATE which is also substring of string mainString. How can we do that ?

    Read the article

  • how to use same string in two java files

    - by Palike
    Sorry for my bad English and for maybe stupid question but I'm new in Java. I need use same string in 2 java files for example: In first java file I've got code for sending emails, I've got string set to default email: public String mail = new String ("[email protected]"); and I use this string in code for send email: email.addTo(mail); In second java file something like set up where can user set new email address I want to have same string, connected with string in first java file. When user put new email String mail will be change to new email address and in email.addTo(mail); will be use this new address How can I do this?

    Read the article

  • Modifying a HTML page to fix several "bugs" add a function to next/previous on a option dropdown

    - by Dennis Sylvian
    SOF, I've got a few problems plaguing me at the moment and am wondering if anyone could assist me with them. I'm trying to get Next Class | Previous Class to act as buttons so that when Next Class is clicked it will go to the next item in the dropdown list and for previous it would go to back one. There used to be a scroll bar that allowed me to scroll the main window left and right, it's missing because (I think it was to do with the scroll left and scroll right function) The footer at the bottom doesn't show correctly on mobile devices; for some reason it appears completely differently to as it does on a computer. The "bar" practically and the Scroll Left and Scroll buttons don't appear at all on mobile devices. The scroll left button is unable to be clicked for some reason, I'm unsure what I've done wrong. Refreshing the page resets the horizontal scroll position to far left (I'm pretty sure this relates to the scroll bar) I want to also find a way so that on mobile devices the the header will not show the placeholder image, however I can't work out what CSS media tag(s) I should be using. Latest: http://jsfiddle.net/pwv7u/ Smaller HTML <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>DATA DATA DATA DATA DATA DATA DATA DATA</title> <style type="text/css"> <!-- @import url("nstyle.css"); --> </style> <script src="jquery.min.js" type="text/javascript"></script> <script type="text/javascript"> $(document).ready( function() { for (var i=0;i<($("table").children().length);i++){ if(readCookie(i)) $($($("table").children()[i]).children()[(readCookie(i))]).toggleClass('selected').siblings().removeClass('selected'); } $("tr").click(function(){ $(this).toggleClass('selected').siblings().removeClass('selected'); if(readCookie($(this).parent().index())){ if(readCookie($(this).parent().index())==$(this).index()) eraseCookie($(this).parent().index()); else{ eraseCookie($(this).parent().index()); createCookie($(this).parent().index(),$(this).index(),1); } } else createCookie($(this).parent().index(),$(this).index(),1); }); // gather CLASS info var selector = $('.class-selector').on('change', function(){ var id = this.value; if (id!==''){ scrollToAnchor(id); } }); $('a[id^="CLASS"]').each(function(){ var id = this.id, option = $('<option>',{ value: this.id, text:this.id }); selector.append(option); }); function scrollToAnchor(aid) { var aTag = $("a[id='" + aid + "']"); $('html,body').animate({ scrollTop: aTag.offset().top - 80 }, 1); } $("a.TOPJS").click(function () { scrollToAnchor('TOP'); }); $("a.KEYJS").click(function () { scrollToAnchor('KEY'); }); $("a.def").click(function () { $('#container').animate({ "scrollLeft": "-=204" }, 200); }); $("a.abc").click(function () { $("#container").animate({ "scrollLeft": "+=204" }, 200); }); function createCookie(name,value,days) { var expires; if (days) { var date = new Date(); date.setMilliseconds(0); date.setSeconds(0); date.setMinutes(0); date.setHours(0); date.setDate(date.getDate()+days); expires = "; expires="+date.toGMTString(); } else expires = ""; document.cookie = name+"="+value+expires+"; path=/"; } function readCookie(name) { var nameEQ = name + "="; var ca = document.cookie.split(';'); for(var i=0;i < ca.length;i++) { var c = ca[i]; while (c.charAt(0)==' ') c = c.substring(1,c.length); if (c.indexOf(nameEQ) === 0) return c.substring(nameEQ.length,c.length); } return null; } function eraseCookie(name) { createCookie(name,"",-1); } }); </script> </head> <body> <div id="header_container"> <div id="header"> <a href="http://site.x/" target="_blank"><img src="http://placehold.it/300x80"></a> <select class="class-selector"> <option value="">-select class-</option> </select> <div class="classcycler"> <a href="#TOP"><font color=#EFEFEF>Next Class</font></a> <font color=red>|</font> <a href="#TOP"><font color=#EFEFEF>Previous Class</font></a> </div> <div id="header1"> Semi-Transparent Image <a href="#TOP"><font color=#EFEFEF>Up to Top</font></a> | <a href="#KEY"><font color=#EFEFEF>Down to Key</font></a> </div> </div> </div> <a id="TOP"></a> <div id="container"> <table id="gradient-style"> <tbody> <thead> <tr> <th scope="col"><a id="CLASS1"></a>Class 1</th> <th scope="col">Class 1</th> <th scope="col">Class 1</th> <th scope="col">Class<br>Test 1</th> <th scope="col">Class 1</th> <th scope="col">Class 1</th> <th scope="col">Class 1</th> <th scope="col">Class Data 1</th> <th scope="col">Class 1<br>Class 1</th> <th scope="col">Class 1</th> <th scope="col">Class 1<br>Class 1</th> <th scope="col">Class 1</th> <th scope="col">Class 1</th> <th scope="col">Class 1</th> <th scope="col">Class 1</th> <th scope="col">Class 1</th> <th scope="col">Class 1 Class 1</th> <th scope="col">title text<br> data text</th> <th scope="col">title text<br> data text</th> <th scope="col">title text</th> <th scope="col">title text<br> data text</th> <th scope="col">title text<br> data text</th> <th scope="col">title text<br> data text</th> <th scope="col">title text</th> <th scope="col">title text<br> data text</th> <th scope="col">title text<br> data text</th> <th scope="col">title text<br> data text</th> <th scope="col">title text<br> data text</th> <th scope="col">title text<br> (data text)</th> <th scope="col">title text</th> <th scope="col">text</th> <th scope="col">text</th> <th scope="col">title text</th> <th scope="col">title text</th> </tr> </thead> <tr class="ft3"><td>testing data</td><td>testing data</td><td>test</td><td>class b</td><td>test4</td><td><div align="left">data</div></td><td><div align="left"> </div></td><td><div align="left"></div></td><td>testing data</td><td>testing data</td><td>testing data</td><td>testing data</td><td>test</td><td>test</td><td>test</td><td>test</td><td>testing data</td><td>test</td><td>testing data</td><td>testing data</td><td>testing data</td><td>test</td><td>test</td><td>testing data</td><td>testing data</td><td>testing data</td><td>test</td><td>testing data</td><td>test</td><td>testing data</td><td>test</td><td>test</td><td>testing data</td><td>testing data</td><tr> <tr class="f3"><td>test</td><td>test</td><td>test</td><td>class a</td><td>test2</td><td><div align="left"> </div></td><td><div align="left"></div></td><td><div align="left"></div></td><td>testing data</td><td>test</td><td>test</td><td>test</td><td>testing data</td><td>testing data</td><td>test</td><td>testing data</td><td>test</td><td>testing data</td><td>testing data</td><td>test</td><td>testing data</td><td>testing data</td><td>test</td><td>testing data</td><td>testing data</td><td>testing data</td><td>test</td><td>testing data</td><td>test</td><td>test</td><td>test</td><td>test</td><td>testing data</td><td>test</td><tr> <thead> <tr> <th scope="col"><a id="CLASS2"></a>Class 2</th> <th scope="col">Class 2</th> <th scope="col">Class 2</th> <th scope="col">Class<br>Test 2</th> <th scope="col">Class 2</th> <th scope="col">Class 2</th> <th scope="col">Class 2</th> <th scope="col">Class Data 2</th> <th scope="col">Class 2<br>Class 2</th> <th scope="col">Class 2</th> <th scope="col">Class 2<br>Class 2</th> <th scope="col">Class 2</th> <th scope="col">Class 2</th> <th scope="col">Class 2</th> <th scope="col">Class 2</th> <th scope="col">Class 2</th> <th scope="col">Class 2 Class 2</th> <th scope="col">title text<br> data text</th> <th scope="col">title text<br> data text</th> <th scope="col">title text</th> <th scope="col">title text<br> data text</th> <th scope="col">title text<br> data text</th> <th scope="col">title text<br> data text</th> <th scope="col">title text</th> <th scope="col">title text<br> data text</th> <th scope="col">title text<br> data text</th> <th scope="col">title text<br> data text</th> <th scope="col">title text<br> data text</th> <th scope="col">title text<br> (data text)</th> <th scope="col">title text</th> <th scope="col">text</th> <th scope="col">text</th> <th scope="col">title text</th> <th scope="col">title text</th> </tr> </thead> <tr class="ft3"><td>testing data</td><td>testing data</td><td>test</td><td>class f</td><td>test2</td><td><div align="left">data</div></td><td><div align="left"></div></td><td><div align="left">data</div></td><td>test</td><td>test</td><td>testing data</td><td>test</td><td>test</td><td>test</td><td>testing data</td><td>testing data</td><td>testing data</td><td>testing data</td><td>testing data</td><td>test</td><td>testing data</td><td>test</td><td>test</td><td>test</td><td>testing data</td><td>testing data</td><td>test</td><td>test</td><td>test</td><td>testing data</td><td>testing data</td><td>testing data</td><td>testing data</td><td>testing data</td><tr> <tr><td>test</td><td>testing data</td><td>test</td><td>class f</td><td>test4</td><td><div align="left">data</div></td><td><div align="left"></div></td><td><div align="left"></div></td><td>testing data</td><td>test</td><td>test</td><td>test</td><td>testing data</td><td>testing data</td><td>testing data</td><td>testing data</td><td>testing data</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>testing data</td><td>test</td><td>testing data</td><td>testing data</td><td>test</td><td>test</td><td>test</td><td>testing data</td><td>test</td><td>testing data</td><td>testing data</td><td>testing data</td><tr> <tr class="f3"><td>test</td><td>testing data</td><td>testing data</td><td>class d</td><td>test5</td><td><div align="left">data</div></td><td><div align="left"> </div></td><td><div align="left">data</div></td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>testing data</td><td>testing data</td><td>testing data</td><td>testing data</td><td>testing data</td><td>testing data</td><td>testing data</td><td>testing data</td><td>testing data</td><td>testing data</td><td>test</td><td>test</td><td>testing data</td><td>testing data</td><td>testing data</td><td>testing data</td><td>test</td><td>test</td><td>testing data</td><td>testing data</td><td>testing data</td><tr> <tr><td>testing data</td><td>test</td><td>test</td><td>class f</td><td>test5</td><td><div align="left"></div></td><td><div align="left"></div></td><td><div align="left">data</div></td><td>testing data</td><td>test</td><td>testing data</td><td>testing data</td><td>test</td><td>test</td><td>testing data</td><td>test</td><td>test</td><td>testing data</td><td>testing data</td><td>test</td><td>test</td><td>testing data</td><td>test</td><td>test</td><td>test</td><td>test</td><td>testing data</td><td>testing data</td><td>testing data</td><td>test</td><td>test</td><td>testing data</td><td>test</td><td>testing data</td><tr> <tr class="f2"><td>test</td><td>test</td><td>testing data</td><td>class a</td><td>test1</td><td><div align="left">data</div></td><td><div align="left"> </div></td><td><div align="left">data</div></td><td>test</td><td>test</td><td>testing data</td><td>testing data</td><td>test</td><td>testing data</td><td>test</td><td>test</td><td>testing data</td><td>testing data</td><td>test</td><td>testing data</td><td>testing data</td><td>testing data</td><td>testing data</td><td>test</td><td>test</td><td>testing data</td><td>testing data</td><td>testing data</td><td>testing data</td><td>testing data</td><td>test</td><td>testing data</td><td>testing data</td><td>test</td><tr> </tbody> <tfoot> <tr> <th class="alt" colspan="34" scope="col"><a id="KEY"></a><img src="http://placehold.it/300x50"></th> </tr> <tr> <td colspan="34"><em><b>DATA DATA</b> - DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA </em></td> </tr> <tr> <td class="alt" colspan="34"><em><b>DAT DATA</b> - DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA </em></td> </tr> </tfoot> </table> </div> <div id="footer_container"> <div id="footer"> <a href="http://site.x/" target="_blank"><img src="http://placehold.it/300x80"></a> <div class="footleft"> <a class="def" href="javascript: void(0);"><font color="#EFEFEF">Scroll Left</font></a> </div> <div id="footer1"> <font color="darkblue">Semi-Transparent Image</font> <i>Copyright &copy; 2013 <a href="http://site.x/" target="_blank" style="text-decoration: none"><font color=#ADD8E6>site</font></a>.</i> </div> <div id="footer2"> <i>All Rights Reserved.</i> </div> <div class="footright"> <a class="abc" href="javascript: void(0);"><font color="#EFEFEF">Scroll Right</font></a> </div> </div> </div> </body> </html> CSS gradient-style * { white-space: nowrap; } #header .class-selector { top: 10px; left: 20px; position: fixed; } #header .classcycler { top: 45px; left: 20px; position: fixed; font-size:20px; } body { line-height: 1.6em; background-color: #535353; overflow-x: scroll; } #gradient-style { font-family: "Lucida Sans Unicode", "Lucida Grande", Sans-Serif; font-size: 12px; margin: 0px; width: 100%; text-align: center; border-collapse: collapse; } #gradient-style th { font-size: 13px; font-weight: normal; line-height:250%; padding-left: 5px; padding-right: 5px; background: #535353 url('table-images/gradhead.png') repeat-x; border-top: 1px solid #fff; border-bottom: 1px solid #fff; color: #ffffff; } #gradient-style th.alt { font-family: "Times New Roman", Serif; text-align: left; padding: 10px; font-size: 26px; } #gradient-style td { padding-left: 5px; padding-right: 5px; border-bottom: 1px solid #fff; border-left: 1px solid #fff; border-right: 1px solid #fff; color: #00000; border-top: 1px solid #fff; background: #FFF url('table-images/gradback.png') repeat-x; } #gradient-style tr.ft3 td { color: #00000; background: #99cde7 url('table-images/gradoverallstudent.png') repeat-x; font-weight: bold; } #gradient-style tr.f1 td { color: #00000; background: #99cde7 url('table-images/gradbeststudent.png') repeat-x; } #gradient-style tr.f2 td { color: #00000; background: #b7e2b6 url('table-images/gradmostattentedstudent.png') repeat-x; } #gradient-style tr.f3 td { color: #00000; background: #a9cd6c url('table-images/gradleastlatestudtent.png') repeat-x; } #gradient-style tfoot tr td { background: #6FA275; font-size: 12px; color: #000; padding: 10; text-align: left; } #gradient-style tbody tr:hover td, #gradient-style tbody tr.selected td { background: #d0dafd url('table-images/gradhover.png') repeat-x; color: #339; } body { margin: 0; padding: 0; } #header_container { background: #000000 url('table-images/gradhead.png') repeat-x; border: 0px solid #666; height: 80px; left: 0; position: fixed; width: 100%; top: 0; } #header { position: relative; margin: 0 auto; width: 500px; height: 100%; text-align: center; color: #0c0aad; } #header1 { position: absolute; width: 125%; top: 50px; } #container { margin: 0 auto; overflow: auto; padding: 80px 0; width: 100%; } #content { } #footer_container { background: #000000 url('table-images/gradhead.png') repeat-x; border: 0px solid #666; bottom: 0; height: 95px; left: 0; position: fixed; width: 100%; } #footer { position: relative; margin: 0 auto; height: 100%; text-align: center; color: #FFF; } #footer1 { position: absolute; width: 103%; top: 50px; } #footer2 { position: absolute; width: 110%; top: 70px; } #footer .footleft { top: 45px; left: 2%; position: absolute; font-size:20px; } #footer .footright { top: 45px; right: 2%; position: absolute; font-size:20px; }

    Read the article

  • XML Serializing a class with a Dictionary<string, List<string>> object

    - by Matt
    Is it possible to implement IXmlSerializable and in my XML file capture an object of type Dictionary ? I have the following public class coolio : IXmlSerializable { private int a; private bool b; private string c; private Dictionary<string, List<string>> coco; public coolio(int _a, bool _b, string _c, Dictionary<string, List<string>> _coco) { a=_a; b=_b; c=_c; coco=_coco; } public System.Xml.Schema.XmlSchema GetSchema() { return null; } public void WriteXml(XmlWriter writer) { const string myType = "coolio"; writer.WriteStartElement(myType); writer.WriteAttributeString("a", a.ToString()); writer.WriteAttributeString("b", b.ToString()); writer.WriteAttributeString("c", c); // How do I add a subelement for Dictionary<string, List<string>> coco? writer.WriteEndElement(); } public void ReadXml(XmlReader reader) { if (reader.MoveToContent() != XmlNodeType.Element || reader.LocalName != "coolio") return; a= int.Parse(reader["a"]); b = bool.Parse(reader["b"]); c= reader["c"]; // How do I read subelement into Dictionary<string, List<string>> coco? } } But I am stumped as to how I could add the Dictionary (XML seriliazed to my XML file)

    Read the article

  • Avoiding resource (localizable string) duplication with String.Format

    - by Hrvoje Prgeša
    I'm working on a application (.NET, but not relevant) where there is large potential for resource/string duplication - most of these strings are simple like: Volume: 33 Volume: 33 (dB) Volume 33 dB Volume (dB) Command - Volume: 33 (dB) where X, Y and unit are the same. Should I define a new resource for each of the string or is it preferable to use String.Format to simplify some of these, eg.: String.Format("{0}: {1}", Resource.Volume, 33) String.Format("{0}: {1} {2}", Resource.Volume, 33, Resource.dB) Resource.Volume String.Format("{0} ({1})", 33, Resource.dB) String.Format("{0} ({1})", Resource.Volume, Resource.dB) String.Format("Command - {0}: {1} {2}", Resource.Volume, 33, Resource.dB) I would also define string formats like "{0}: {1}" in the resources so there would be a possibility of reordering words... I would not use this approach selectivly and not throughout the whole application.. And how about: String.Format("{0}: {1}", Volume, Resource.Muted_Volume) // = Volume: Muted Resource.Muted_Volume String.Format("{0}: {1} (by user {2})", Volume, Resource.Muted_Volume, "xy") // = Volume: Muted (by user xy) The advantage is cutting the number of resource by the factor of 4-5. Are there any hidden dangers of using this approach? Could someone give me an example (language) where this would not work correctly?

    Read the article

  • Optimizing a lot of Scanner.findWithinHorizon(pattern, 0) calls

    - by darvids0n
    I'm building a process which extracts data from 6 csv-style files and two poorly laid out .txt reports and builds output CSVs, and I'm fully aware that there's going to be some overhead searching through all that whitespace thousands of times, but I never anticipated converting about about 50,000 records would take 12 hours. Excerpt of my manual matching code (I know it's horrible that I use lists of tokens like that, but it was the best thing I could think of): public static String lookup(List<String> tokensBefore, List<String> tokensAfter) { String result = null; while(_match(tokensBefore)) { // block until all input is read if(id.hasNext()) { result = id.next(); // capture the next token that matches if(_matchImmediate(tokensAfter)) // try to match tokensAfter to this result return result; } else return null; // end of file; no match } return null; // no matches } private static boolean _match(List<String> tokens) { return _match(tokens, true); } private static boolean _match(List<String> tokens, boolean block) { if(tokens != null && !tokens.isEmpty()) { if(id.findWithinHorizon(tokens.get(0), 0) == null) return false; for(int i = 1; i <= tokens.size(); i++) { if (i == tokens.size()) { // matches all tokens return true; } else if(id.hasNext() && !id.next().matches(tokens.get(i))) { break; // break to blocking behaviour } } } else { return true; // empty list always matches } if(block) return _match(tokens); // loop until we find something or nothing else return false; // return after just one attempted match } private static boolean _matchImmediate(List<String> tokens) { if(tokens != null) { for(int i = 0; i <= tokens.size(); i++) { if (i == tokens.size()) { // matches all tokens return true; } else if(!id.hasNext() || !id.next().matches(tokens.get(i))) { return false; // doesn't match, or end of file } } return false; // we have some serious problems if this ever gets called } else { return true; // empty list always matches } } Basically wondering how I would work in an efficient string search (Boyer-Moore or similar). My Scanner id is scanning a java.util.String, figured buffering it to memory would reduce I/O since the search here is being performed thousands of times on a relatively small file. The performance increase compared to scanning a BufferedReader(FileReader(File)) was probably less than 1%, the process still looks to be taking a LONG time. I've also traced execution and the slowness of my overall conversion process is definitely between the first and last like of the lookup method. In fact, so much so that I ran a shortcut process to count the number of occurrences of various identifiers in the .csv-style files (I use 2 lookup methods, this is just one of them) and the process completed indexing approx 4 different identifiers for 50,000 records in less than a minute. Compared to 12 hours, that's instant. Some notes (updated): I don't necessarily need the pattern-matching behaviour, I only get the first field of a line of text so I need to match line breaks or use Scanner.nextLine(). All ID numbers I need start at position 0 of a line and run through til the first block of whitespace, after which is the name of the corresponding object. I would ideally want to return a String, not an int locating the line number or start position of the result, but if it's faster then it will still work just fine. If an int is being returned, however, then I would now have to seek to that line again just to get the ID; storing the ID of every line that is searched sounds like a way around that. Anything to help me out, even if it saves 1ms per search, will help, so all input is appreciated. Thankyou! Usage scenario 1: I have a list of objects in file A, who in the old-style system have an id number which is not in file A. It is, however, POSSIBLY in another csv-style file (file B) or possibly still in a .txt report (file C) which each also contain a bunch of other information which is not useful here, and so file B needs to be searched through for the object's full name (1 token since it would reside within the second column of any given line), and then the first column should be the ID number. If that doesn't work, we then have to split the search token by whitespace into separate tokens before doing a search of file C for those tokens as well. Generalised code: String field; for (/* each record in file A */) { /* construct the rest of this object from file A info */ // now to find the ID, if we can List<String> objectName = new ArrayList<String>(1); objectName.add(Pattern.quote(thisObject.fullName)); field = lookup(objectSearchToken, objectName); // search file B if(field == null) // not found in file B { lookupReset(false); // initialise scanner to check file C objectName.clear(); // not using the full name String[] tokens = thisObject.fullName.split(id.delimiter().pattern()); for(String s : tokens) objectName.add(Pattern.quote(s)); field = lookup(objectSearchToken, objectName); // search file C lookupReset(true); // back to file B } else { /* found it, file B specific processing here */ } if(field != null) // found it in B or C thisObject.ID = field; } The objectName tokens are all uppercase words with possible hyphens or apostrophes in them, separated by spaces. Much like a person's name. As per a comment, I will pre-compile the regex for my objectSearchToken, which is just [\r\n]+. What's ending up happening in file C is, every single line is being checked, even the 95% of lines which don't contain an ID number and object name at the start. Would it be quicker to use ^[\r\n]+.*(objectname) instead of two separate regexes? It may reduce the number of _match executions. The more general case of that would be, concatenate all tokensBefore with all tokensAfter, and put a .* in the middle. It would need to be matching backwards through the file though, otherwise it would match the correct line but with a huge .* block in the middle with lots of lines. The above situation could be resolved if I could get java.util.Scanner to return the token previous to the current one after a call to findWithinHorizon. I have another usage scenario. Will put it up asap.

    Read the article

  • Tool to test a user account and password (test login)

    - by TheCleaner
    Yeah, I can fire up a VM or remote into something and try the password...I know...but is there a tool or script that will simulate a login just enough to confirm or deny that the password is correct? Scenario: A server service account's password is "forgotten"...but we think we know what it is. I'd like to pass the credentials to something and have it kick back with "correct password" or "incorrect password". I even thought about a drive mapping script with that user account and password being passed to see if it mapped the drive successfully or not but got lost in the logic of making it work correctly...something like: -Script asks for username via msgbox -script asks for password via msgbox -script tries to map a drive to a common share that everyone has access to -script unmaps drive if successful -script returns popup msgbox stating "Correct Password" or else "Incorrect Password" Any help is appreciated...you'd think this would be a rare occurrence not requiring a tool to support it but...well....

    Read the article

  • During Spring unit test, data written to db but test not seeing the data

    - by richever
    I wrote a test case that extends AbstractTransactionalJUnit4SpringContextTests. The single test case I've written creates an instance of class User and attempts to write it to the database using Hibernate. The test code then uses SimpleJdbcTemplate to execute a simple select count(*) from the user table to determine if the user was persisted to the database or not. The test always fails though. I was suspect because in the Spring controller I wrote, the ability to save an instance of User to the db is successful. So I added the Rollback annotation to the unit test and sure enough, the data is written to the database since I can even see it in the appropriate table -- the transaction isn't rolled back when the test case is finished. Here's my test case: @ContextConfiguration(locations = { "classpath:context-daos.xml", "classpath:context-dataSource.xml", "classpath:context-hibernate.xml"}) public class UserDaoTest extends AbstractTransactionalJUnit4SpringContextTests { @Autowired private UserDao userDao; @Test @Rollback(false) public void teseCreateUser() { try { UserModel user = randomUser(); String username = user.getUserName(); long id = userDao.create(user); String query = "select count(*) from public.usr where usr_name = '%s'"; long count = simpleJdbcTemplate.queryForLong(String.format(query, username)); Assert.assertEquals("User with username should be in the db", 1, count); } catch (Exception e) { e.printStackTrace(); Assert.assertNull("testCreateUser: " + e.getMessage()); } } } I think I was remiss by not adding the configuration files. context-hibernate.xml <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd> <bean id="namingStrategy" class="org.springframework.beans.factory.config.FieldRetrievingFactoryBean"> <property name="staticField"> <value>org.hibernate.cfg.ImprovedNamingStrategy.INSTANCE</value> </property> </bean> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean" destroy-method="destroy" scope="singleton"> <property name="namingStrategy"> <ref bean="namingStrategy"/> </property> <property name="dataSource" ref="dataSource"/> <property name="mappingResources"> <list> <value>com/company/model/usr.hbm.xml</value> </list> </property> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect">org.hibernate.dialect.PostgreSQLDialect</prop> <prop key="hibernate.show_sql">true</prop> <prop key="hibernate.use_sql_comments">true</prop> <prop key="hibernate.query.substitutions">yes 'Y', no 'N'</prop> <prop key="hibernate.cache.provider_class">org.hibernate.cache.EhCacheProvider</prop> <prop key="hibernate.cache.use_query_cache">true</prop> <prop key="hibernate.cache.use_minimal_puts">false</prop> <prop key="hibernate.cache.use_second_level_cache">true</prop> <prop key="hibernate.current_session_context_class">thread</prop> </props> </property> </bean> <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"> <property name="sessionFactory" ref="sessionFactory"/> <property name="nestedTransactionAllowed" value="false" /> </bean> <bean id="transactionInterceptor" class="org.springframework.transaction.interceptor.TransactionInterceptor"> <property name="transactionManager"> <ref local="transactionManager"/> </property> <property name="transactionAttributes"> <props> <prop key="create">PROPAGATION_REQUIRED</prop> <prop key="delete">PROPAGATION_REQUIRED</prop> <prop key="update">PROPAGATION_REQUIRED</prop> <prop key="*">PROPAGATION_SUPPORTS,readOnly</prop> </props> </property> </bean> </beans> context-dataSource.xml <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"> <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close"> <property name="driverClass" value="org.postgresql.Driver" /> <property name="jdbcUrl" value="jdbc\:postgresql\://localhost:5432/company_dev" /> <property name="user" value="postgres" /> <property name="password" value="postgres" /> </bean> </beans> context-daos.xml <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"> <bean id="extendedFinderNamingStrategy" class="com.company.dao.finder.impl.ExtendedFinderNamingStrategy"/> <bean id="finderIntroductionAdvisor" class="com.company.dao.finder.impl.FinderIntroductionAdvisor"/> <bean id="abstractDaoTarget" class="com.company.dao.impl.GenericDaoHibernateImpl" abstract="true" depends-on="sessionFactory"> <property name="sessionFactory"> <ref bean="sessionFactory"/> </property> <property name="namingStrategy"> <ref bean="extendedFinderNamingStrategy"/> </property> </bean> <bean id="abstractDao" class="org.springframework.aop.framework.ProxyFactoryBean" abstract="true"> <property name="interceptorNames"> <list> <value>transactionInterceptor</value> <value>finderIntroductionAdvisor</value> </list> </property> </bean> <bean id="userDao" parent="abstractDao"> <property name="proxyInterfaces"> <value>com.company.dao.UserDao</value> </property> <property name="target"> <bean parent="abstractDaoTarget"> <constructor-arg> <value>com.company.model.UserModel</value> </constructor-arg> </bean> </property> </bean> </beans> Some of this I've inherited from someone else. I wouldn't have used the proxying that is going on here because I'm not sure it's needed but this is what I'm working with. Any help much appreciated.

    Read the article

  • AdvancedFormatProvider: Making string.format do more

    - by plblum
    When I have an integer that I want to format within the String.Format() and ToString(format) methods, I’m always forgetting the format symbol to use with it. That’s probably because its not very intuitive. Use {0:N0} if you want it with group (thousands) separators. text = String.Format("{0:N0}", 1000); // returns "1,000"   int value1 = 1000; text = value1.ToString("N0"); Use {0:D} or {0:G} if you want it without group separators. text = String.Format("{0:D}", 1000); // returns "1000"   int value2 = 1000; text2 = value2.ToString("D"); The {0:D} is especially confusing because Microsoft gives the token the name “Decimal”. I thought it reasonable to have a new format symbol for String.Format, "I" for integer, and the ability to tell it whether it shows the group separators. Along the same lines, why not expand the format symbols for currency ({0:C}) and percent ({0:P}) to let you omit the currency or percent symbol, omit the group separator, and even to drop the decimal part when the value is equal to the whole number? My solution is an open source project called AdvancedFormatProvider, a group of classes that provide the new format symbols, continue to support the rest of the native symbols and makes it easy to plug in additional format symbols. Please visit https://github.com/plblum/AdvancedFormatProvider to learn about it in detail and explore how its implemented. The rest of this post will explore some of the concepts it takes to expand String.Format() and ToString(format). AdvancedFormatProvider benefits: Supports {0:I} token for integers. It offers the {0:I-,} option to omit the group separator. Supports {0:C} token with several options. {0:C-$} omits the currency symbol. {0:C-,} omits group separators, and {0:C-0} hides the decimal part when the value would show “.00”. For example, 1000.0 becomes “$1000” while 1000.12 becomes “$1000.12”. Supports {0:P} token with several options. {0:P-%} omits the percent symbol. {0:P-,} omits group separators, and {0:P-0} hides the decimal part when the value would show “.00”. For example, 1 becomes “100 %” while 1.1223 becomes “112.23 %”. Provides a plug in framework that lets you create new formatters to handle specific format symbols. You register them globally so you can just pass the AdvancedFormatProvider object into String.Format and ToString(format) without having to figure out which plug ins to add. text = String.Format(AdvancedFormatProvider.Current, "{0:I}", 1000); // returns "1,000" text2 = String.Format(AdvancedFormatProvider.Current, "{0:I-,}", 1000); // returns "1000" text3 = String.Format(AdvancedFormatProvider.Current, "{0:C-$-,}", 1000.0); // returns "1000.00" The IFormatProvider parameter Microsoft has made String.Format() and ToString(format) format expandable. They each take an additional parameter that takes an object that implements System.IFormatProvider. This interface has a single member, the GetFormat() method, which returns an object that knows how to convert the format symbol and value into the desired string. There are already a number of web-based resources to teach you about IFormatProvider and the companion interface ICustomFormatter. I’ll defer to them if you want to dig more into the topic. The only thing I want to point out is what I think are implementation considerations. Why GetFormat() always tests for ICustomFormatter When you see examples of implementing IFormatProviders, the GetFormat() method always tests the parameter against the ICustomFormatter type. Why is that? public object GetFormat(Type formatType) { if (formatType == typeof(ICustomFormatter)) return this; else return null; } The value of formatType is already predetermined by the .net framework. String.Format() uses the StringBuilder.AppendFormat() method to parse the string, extracting the tokens and calling GetFormat() with the ICustomFormatter type. (The .net framework also calls GetFormat() with the types of System.Globalization.NumberFormatInfo and System.Globalization.DateTimeFormatInfo but these are exclusive to how the System.Globalization.CultureInfo class handles its implementation of IFormatProvider.) Your code replaces instead of expands I would have expected the caller to pass in the format string to GetFormat() to allow your code to determine if it handles the request. My vision would be to return null when the format string is not supported. The caller would iterate through IFormatProviders until it finds one that handles the format string. Unfortunatley that is not the case. The reason you write GetFormat() as above is because the caller is expecting an object that handles all formatting cases. You are effectively supposed to write enough code in your formatter to handle your new cases and call .net functions (like String.Format() and ToString(format)) to handle the original cases. Its not hard to support the native functions from within your ICustomFormatter.Format function. Just test the format string to see if it applies to you. If not, call String.Format() with a token using the format passed in. public string Format(string format, object arg, IFormatProvider formatProvider) { if (format.StartsWith("I")) { // handle "I" formatter } else return String.Format(formatProvider, "{0:" + format + "}", arg); } Formatters are only used by explicit request Each time you write a custom formatter (implementer of ICustomFormatter), it is not used unless you explicitly passed an IFormatProvider object that supports your formatter into String.Format() or ToString(). This has several disadvantages: Suppose you have several ICustomFormatters. In order to have all available to String.Format() and ToString(format), you have to merge their code and create an IFormatProvider to return an instance of your new class. You have to remember to utilize the IFormatProvider parameter. Its easy to overlook, especially when you have existing code that calls String.Format() without using it. Some APIs may call String.Format() themselves. If those APIs do not offer an IFormatProvider parameter, your ICustomFormatter will not be available to them. The AdvancedFormatProvider solves the first two of these problems by providing a plug-in architecture.

    Read the article

  • Is the Joel Test really a good gauging tool?

    - by henry
    I just learned about the Joel Test. I have been computer programmer for 22 years, but somehow I never heard about it before. I consider my best job so far to be this small investment managing company with 30 employees and only three people in the IT department. I am no longer with them, but I had being working there for five years – my longest streak with any given company. To my surprise they scored extremely poor on the Joel Test. The only two questions I would answer “yes” are #4: Do you have a bug database? And #9: Do you use the best tools money can buy? Everything else is either “sometimes” or straight “no”. Here is what I liked about the company however: Good pay. They bragged about it to my face, and I bragged about it to their face, so it was almost like a family environment. I always knew the big picture. When writing code to solve a particular problem there were no ambiguity about the business nature of that problem. Even though we did not always had written specifications we could ask business users a question anytime, often yelling it across the floor. I could even talk to executives any time I felt like doing it: no appointment necessary. Immediate feedback. Once we implement a solution and make business users happy they immediately let us know that, we (programmers) become heroes of the moment. No red tape. I could always buy any tools I deemed necessary, and design solutions the way my professional judgment dictates. Flexibility. If I had mid-day dental appointment that is near my house rather than near the office, I would send email to the company: "FYI: I work from home today". As long as one of three IT guys was on the floor (to help traders in case their monitors go dark) they did not care where two others were. So the question thus becomes: How valuable is the Joel Test? Why bother with it?

    Read the article

  • loading xml into SQL Server 2008 using sqlbulkload component

    - by mohamed
    "Error: Schema: relationship expected on 'headerRecord'." I get the above error while load xml file to SQL Server 2008 using SQLXMLBulkLoad4 Component , the xml file contains Call Detail records, I have generated schema file from xml file using both , Dataset and XSD.exe tool, but the error remains same., if there is another way to imports xml file with multiple tables that have relationship in each file into SQL Server 2008? . Here the xml file: <CallEventDataFile> <headerRecord> <productionDateTime>0912021247482B0300</productionDateTime> <recordingEntity>00</recordingEntity> <extensions/> </headerRecord> <callEventRecords> <mtSMSRecord> <recordType>7</recordType> <serviceCentre>91521230</serviceCentre> <servedIMSI>36570000031728F2</servedIMSI> <servedIMEI>53886000707896F0</servedIMEI> <servedMSISDN>915212454503F2</servedMSISDN> <msClassmark>3319A1</msClassmark> <recordingEntity>915212110100</recordingEntity> <location> <locationAreaCode>0006</locationAreaCode> <cellIdentifier>0C6E</cellIdentifier> </location> <deliveryTime>0912021535412B0300</deliveryTime> <systemType> <gERAN/> </systemType> <basicService> <teleservice>21</teleservice> </basicService> <additionalChgInfo> <chargeIndicator>2</chargeIndicator> </additionalChgInfo> <chargedParty> <calledParty/> </chargedParty> <orgRNCorBSCId>8E1A</orgRNCorBSCId> <orgMSCId>921A</orgMSCId> <globalAreaID>36F70500060C6E</globalAreaID> <subscriberCategory>0A</subscriberCategory> <firstmccmnc>36F705</firstmccmnc> <smsUserDataType>FF</smsUserDataType> <origination>8191F2</origination> <callReference>1605EB2FE1</callReference> </mtSMSRecord> <moSMSRecord> <recordType>6</recordType> <servedIMSI>36570000238707F9</servedIMSI> <servedIMEI>53928320195925F0</servedIMEI> <servedMSISDN>915212159430F2</servedMSISDN> <msClassmark>3319A2</msClassmark> <serviceCentre>91521230</serviceCentre> <recordingEntity>915212110100</recordingEntity> <location> <locationAreaCode>001B</locationAreaCode> <cellIdentifier>6983</cellIdentifier> </location> <messageReference>01</messageReference> <originationTime>0912021535412B0300</originationTime> <destinationNumber>8111F1</destinationNumber> <systemType> <gERAN/> </systemType> <basicService> <teleservice>22</teleservice> </basicService> <additionalChgInfo> <chargeIndicator>2</chargeIndicator> </additionalChgInfo> <chargedParty> <callingParty/> </chargedParty> <orgRNCorBSCId>8F1A</orgRNCorBSCId> <orgMSCId>921A</orgMSCId> <globalAreaID>36F705001B6983</globalAreaID> <subscriberCategory>0A</subscriberCategory> <firstmccmnc>36F705</firstmccmnc> <smsUserDataType>FF</smsUserDataType> <callReference>1701BED4FF</callReference> </moSMSRecord> <ssActionRecord> <recordType>10</recordType> <servedIMSI>36570000636448F8</servedIMSI> <servedIMEI>53246030714961F0</servedIMEI> <servedMSISDN>915212056928F8</servedMSISDN> <msClassmark>3018A1</msClassmark> <recordingEntity>915212110100</recordingEntity> <location> <locationAreaCode>000C</locationAreaCode> <cellIdentifier>05A5</cellIdentifier> </location> <supplService>FF</supplService> <ssAction> <ussdInvocation/> </ssAction> <ssActionTime>0912021535412B0300</ssActionTime> <ssParameters> <unstructuredData>AA5C2E3702</unstructuredData> </ssParameters> <callReference>1701BED500</callReference> <systemType> <gERAN/> </systemType> <ussdCodingScheme>0F</ussdCodingScheme> <ussdString> <UssdString>AA5C2E3702</UssdString> </ussdString> <ussdRequestCounter>1</ussdRequestCounter> <additionalChgInfo> <chargeIndicator>1</chargeIndicator> </additionalChgInfo> <orgRNCorBSCId>8E1A</orgRNCorBSCId> <orgMSCId>921A</orgMSCId> <globalAreaID>36F705000C05A5</globalAreaID> <subscriberCategory>0A</subscriberCategory> <firstmccmnc>36F705</firstmccmnc> </ssActionRecord> <moCallRecord> <recordType>0</recordType> <servedIMSI>36570000807501F5</servedIMSI> <servedIMEI>53246030713955F0</servedIMEI> <servedMSISDN>915212157901F0</servedMSISDN> <callingNumber>A151911700</callingNumber> <calledNumber>8151677589</calledNumber> <roamingNumber>A111113850</roamingNumber> <recordingEntity>915212110100</recordingEntity> <mscIncomingROUTE> <rOUTEName>HWBSC2</rOUTEName> </mscIncomingROUTE> <mscOutgoingROUTE> <rOUTEName>HWBSC2</rOUTEName> </mscOutgoingROUTE> <location> <locationAreaCode>0006</locationAreaCode> <cellIdentifier>0C2F</cellIdentifier> </location> <basicService> <teleservice>11</teleservice> </basicService> <msClassmark>3319A1</msClassmark> <answerTime>0912021535382B0300</answerTime> <releaseTime>0912021535422B0300</releaseTime> <callDuration>4</callDuration> <radioChanRequested> <dualFullRatePreferred/> </radioChanRequested> <radioChanUsed> <halfRate/> </radioChanUsed> <causeForTerm>0</causeForTerm> <diagnostics> <gsm0408Cause>144</gsm0408Cause> </diagnostics> <callReference>1701BED501</callReference> <additionalChgInfo> <chargeIndicator>2</chargeIndicator> </additionalChgInfo> <gsm-SCFAddress>915212110130</gsm-SCFAddress> <serviceKey>1</serviceKey> <networkCallReference>171D555132</networkCallReference> <mSCAddress>915212110100</mSCAddress> <speechVersionSupported>25</speechVersionSupported> <speechVersionUsed>21</speechVersionUsed> <numberOfDPEncountered>3</numberOfDPEncountered> <levelOfCAMELService>01</levelOfCAMELService> <freeFormatData>800130</freeFormatData> <systemType> <gERAN/> </systemType> <classmark3>C000</classmark3> <chargedParty> <callingParty/> </chargedParty> <mscOutgoingCircuit>1051</mscOutgoingCircuit> <orgRNCorBSCId>8E1A</orgRNCorBSCId> <orgMSCId>921A</orgMSCId> <calledIMSI>36570000635618F8</calledIMSI> <globalAreaID>36F70500060C2F</globalAreaID> <subscriberCategory>0A</subscriberCategory> <firstmccmnc>36F705</firstmccmnc> <lastmccmnc>36F705</lastmccmnc> </moCallRecord> <mtCallRecord> <recordType>1</recordType> <servedIMSI>36570000635618F8</servedIMSI> <servedIMEI>53464010474309F0</servedIMEI> <servedMSISDN>915212755697F8</servedMSISDN> <callingNumber>A151911700</callingNumber> <recordingEntity>915212110100</recordingEntity> <mscIncomingROUTE> <rOUTEName>HWBSC2</rOUTEName> </mscIncomingROUTE> <mscOutgoingROUTE> <rOUTEName>HWBSC2</rOUTEName> </mscOutgoingROUTE> <location> <locationAreaCode>0006</locationAreaCode> <cellIdentifier>0C2D</cellIdentifier> </location> <basicService> <teleservice>11</teleservice> </basicService> <supplServicesUsed> <SuppServiceUsedid> <ssCode>11</ssCode> <ssTime>0912021535382B0300</ssTime> </SuppServiceUsedid> </supplServicesUsed> <msClassmark>331981</msClassmark> <answerTime>0912021535382B0300</answerTime> <releaseTime>0912021535422B0300</releaseTime> <callDuration>4</callDuration> <radioChanRequested> <dualFullRatePreferred/> </radioChanRequested> <radioChanUsed> <halfRate/> </radioChanUsed> <causeForTerm>0</causeForTerm> <diagnostics> <gsm0408Cause>144</gsm0408Cause> </diagnostics> <callReference>1701BED502</callReference> <additionalChgInfo> <chargeIndicator>2</chargeIndicator> </additionalChgInfo> <networkCallReference>171D555132</networkCallReference> <mSCAddress>915212110100</mSCAddress> <speechVersionSupported>25</speechVersionSupported> <speechVersionUsed>21</speechVersionUsed> <systemType> <gERAN/> </systemType> <classmark3>C000</classmark3> <chargedParty> <calledParty/> </chargedParty> <roamingNumber>A111113850</roamingNumber> <mscIncomingCircuit>9119</mscIncomingCircuit> <orgRNCorBSCId>8E1A</orgRNCorBSCId> <orgMSCId>921A</orgMSCId> <globalAreaID>36F70500060C2D</globalAreaID> <subscriberCategory>0A</subscriberCategory> <firstmccmnc>36F705</firstmccmnc> <lastmccmnc>36F705</lastmccmnc> </mtCallRecord> <incGatewayRecord> <recordType>3</recordType> <callingNumber>A17005991565</callingNumber> <calledNumber>A1853643F7</calledNumber> <recordingEntity>915212110100</recordingEntity> <mscIncomingROUTE> <rOUTEName>ZPSTN</rOUTEName> </mscIncomingROUTE> <mscOutgoingROUTE> <rOUTEName>ZTEBSC3</rOUTEName> </mscOutgoingROUTE> <answerTime>0912021535302B0300</answerTime> <releaseTime>0912021535422B0300</releaseTime> <callDuration>12</callDuration> <causeForTerm>0</causeForTerm> <diagnostics> <gsm0408Cause>144</gsm0408Cause> </diagnostics> <callReference>2203AFBF84</callReference> <basicService> <teleservice>11</teleservice> </basicService> <additionalChgInfo> <chargeIndicator>2</chargeIndicator> </additionalChgInfo> <roamingNumber>A111111980</roamingNumber> <mscIncomingCircuit>934</mscIncomingCircuit> <orgMSCId>921A</orgMSCId> <mscIncomingRouteAttribute> <isup/> </mscIncomingRouteAttribute> <networkCallReference>22432B5132</networkCallReference> </incGatewayRecord> <outGatewayRecord> <recordType>4</recordType> <callingNumber>A151012431</callingNumber> <calledNumber>817026936873</calledNumber> <recordingEntity>915212110100</recordingEntity> <mscIncomingROUTE> <rOUTEName>HWBSC</rOUTEName> </mscIncomingROUTE> <mscOutgoingROUTE> <rOUTEName>ZPSTN</rOUTEName> </mscOutgoingROUTE> <answerTime>0912021535192B0300</answerTime> <releaseTime>0912021535432B0300</releaseTime> <callDuration>24</callDuration> <causeForTerm>0</causeForTerm> <diagnostics> <gsm0408Cause>144</gsm0408Cause> </diagnostics> <callReference>2303B19880</callReference> <basicService> <teleservice>11</teleservice> </basicService> <additionalChgInfo> <chargeIndicator>2</chargeIndicator> </additionalChgInfo> <mscOutgoingCircuit>398</mscOutgoingCircuit> <orgMSCId>921A</orgMSCId> <mscOutgoingRouteAttribute> <isup/> </mscOutgoingRouteAttribute> <networkCallReference>238BE55132</networkCallReference> </outGatewayRecord> </callEventRecords> <trailerRecord> <productionDateTime>0912021247512B0300</productionDateTime> <recordingEntity>00</recordingEntity> <firstCallDateTime>000000000000000000</firstCallDateTime> <lastCallDateTime>000000000000000000</lastCallDateTime> <noOfRecords>521</noOfRecords> <extensions/> </trailerRecord> <extensions/> </CallEventDataFile> Schema File generated by Dataset: <?xml version="1.0" standalone="yes"?> <xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> <xs:element name="location"> <xs:complexType> <xs:sequence> <xs:element name="locationAreaCode" type="xs:string" minOccurs="0" /> <xs:element name="cellIdentifier" type="xs:string" minOccurs="0" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="systemType"> <xs:complexType> <xs:sequence> <xs:element name="gERAN" type="xs:string" minOccurs="0" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="basicService"> <xs:complexType> <xs:sequence> <xs:element name="teleservice" type="xs:string" minOccurs="0" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="additionalChgInfo"> <xs:complexType> <xs:sequence> <xs:element name="chargeIndicator" type="xs:string" minOccurs="0" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="chargedParty"> <xs:complexType> <xs:sequence> <xs:element name="calledParty" type="xs:string" minOccurs="0" /> <xs:element name="callingParty" type="xs:string" minOccurs="0" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="mscIncomingROUTE"> <xs:complexType> <xs:sequence> <xs:element name="rOUTEName" type="xs:string" minOccurs="0" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="mscOutgoingROUTE"> <xs:complexType> <xs:sequence> <xs:element name="rOUTEName" type="xs:string" minOccurs="0" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="radioChanRequested"> <xs:complexType> <xs:sequence> <xs:element name="dualFullRatePreferred" type="xs:string" minOccurs="0" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="radioChanUsed"> <xs:complexType> <xs:sequence> <xs:element name="halfRate" type="xs:string" minOccurs="0" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="diagnostics"> <xs:complexType> <xs:sequence> <xs:element name="gsm0408Cause" type="xs:string" minOccurs="0" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="CallEventDataFile"> <xs:complexType> <xs:sequence> <xs:element name="extensions" type="xs:string" minOccurs="0" /> <xs:element name="headerRecord" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="productionDateTime" type="xs:string" minOccurs="0" /> <xs:element name="recordingEntity" type="xs:string" minOccurs="0" /> <xs:element name="extensions" type="xs:string" minOccurs="0" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="callEventRecords" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="mtSMSRecord" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="recordType" type="xs:string" minOccurs="0" /> <xs:element name="serviceCentre" type="xs:string" minOccurs="0" /> <xs:element name="servedIMSI" type="xs:string" minOccurs="0" /> <xs:element name="servedIMEI" type="xs:string" minOccurs="0" /> <xs:element name="servedMSISDN" type="xs:string" minOccurs="0" /> <xs:element name="msClassmark" type="xs:string" minOccurs="0" /> <xs:element name="recordingEntity" type="xs:string" minOccurs="0" /> <xs:element name="deliveryTime" type="xs:string" minOccurs="0" /> <xs:element name="orgRNCorBSCId" type="xs:string" minOccurs="0" /> <xs:element name="orgMSCId" type="xs:string" minOccurs="0" /> <xs:element name="globalAreaID" type="xs:string" minOccurs="0" /> <xs:element name="subscriberCategory" type="xs:string" minOccurs="0" /> <xs:element name="firstmccmnc" type="xs:string" minOccurs="0" /> <xs:element name="smsUserDataType" type="xs:string" minOccurs="0" /> <xs:element name="origination" type="xs:string" minOccurs="0" /> <xs:element name="callReference" type="xs:string" minOccurs="0" /> <xs:element ref="location" minOccurs="0" maxOccurs="unbounded" /> <xs:element ref="systemType" minOccurs="0" maxOccurs="unbounded" /> <xs:element ref="basicService" minOccurs="0" maxOccurs="unbounded" /> <xs:element ref="additionalChgInfo" minOccurs="0" maxOccurs="unbounded" /> <xs:element ref="chargedParty" minOccurs="0" maxOccurs="unbounded" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="moSMSRecord" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="recordType" type="xs:string" minOccurs="0" /> <xs:element name="servedIMSI" type="xs:string" minOccurs="0" /> <xs:element name="servedIMEI" type="xs:string" minOccurs="0" /> <xs:element name="servedMSISDN" type="xs:string" minOccurs="0" /> <xs:element name="msClassmark" type="xs:string" minOccurs="0" /> <xs:element name="serviceCentre" type="xs:string" minOccurs="0" /> <xs:element name="recordingEntity" type="xs:string" minOccurs="0" /> <xs:element name="messageReference" type="xs:string" minOccurs="0" /> <xs:element name="originationTime" type="xs:string" minOccurs="0" /> <xs:element name="destinationNumber" type="xs:string" minOccurs="0" /> <xs:element name="orgRNCorBSCId" type="xs:string" minOccurs="0" /> <xs:element name="orgMSCId" type="xs:string" minOccurs="0" /> <xs:element name="globalAreaID" type="xs:string" minOccurs="0" /> <xs:element name="subscriberCategory" type="xs:string" minOccurs="0" /> <xs:element name="firstmccmnc" type="xs:string" minOccurs="0" /> <xs:element name="smsUserDataType" type="xs:string" minOccurs="0" /> <xs:element name="callReference" type="xs:string" minOccurs="0" /> <xs:element ref="location" minOccurs="0" maxOccurs="unbounded" /> <xs:element ref="systemType" minOccurs="0" maxOccurs="unbounded" /> <xs:element ref="basicService" minOccurs="0" maxOccurs="unbounded" /> <xs:element ref="additionalChgInfo" minOccurs="0" maxOccurs="unbounded" /> <xs:element ref="chargedParty" minOccurs="0" maxOccurs="unbounded" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="ssActionRecord" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="recordType" type="xs:string" minOccurs="0" /> <xs:element name="servedIMSI" type="xs:string" minOccurs="0" /> <xs:element name="servedIMEI" type="xs:string" minOccurs="0" /> <xs:element name="servedMSISDN" type="xs:string" minOccurs="0" /> <xs:element name="msClassmark" type="xs:string" minOccurs="0" /> <xs:element name="recordingEntity" type="xs:string" minOccurs="0" /> <xs:element name="supplService" type="xs:string" minOccurs="0" /> <xs:element name="ssActionTime" type="xs:string" minOccurs="0" /> <xs:element name="callReference" type="xs:string" minOccurs="0" /> <xs:element name="ussdCodingScheme" type="xs:string" minOccurs="0" /> <xs:element name="ussdRequestCounter" type="xs:string" minOccurs="0" /> <xs:element name="orgRNCorBSCId" type="xs:string" minOccurs="0" /> <xs:element name="orgMSCId" type="xs:string" minOccurs="0" /> <xs:element name="globalAreaID" type="xs:string" minOccurs="0" /> <xs:element name="subscriberCategory" type="xs:string" minOccurs="0" /> <xs:element name="firstmccmnc" type="xs:string" minOccurs="0" /> <xs:element ref="location" minOccurs="0" maxOccurs="unbounded" /> <xs:element name="ssAction" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="ussdInvocation" type="xs:string" minOccurs="0" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="ssParameters" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="unstructuredData" type="xs:string" minOccurs="0" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element ref="systemType" minOccurs="0" maxOccurs="unbounded" /> <xs:element name="ussdString" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="UssdString" type="xs:string" minOccurs="0" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element ref="additionalChgInfo" minOccurs="0" maxOccurs="unbounded" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="moCallRecord" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="recordType" type="xs:string" minOccurs="0" /> <xs:element name="servedIMSI" type="xs:string" minOccurs="0" /> <xs:element name="servedIMEI" type="xs:string" minOccurs="0" /> <xs:element name="servedMSISDN" type="xs:string" minOccurs="0" /> <xs:element name="callingNumber" type="xs:string" minOccurs="0" /> <xs:element name="calledNumber" type="xs:string" minOccurs="0" /> <xs:element name="roamingNumber" type="xs:string" minOccurs="0" /> <xs:element name="recordingEntity" type="xs:string" minOccurs="0" /> <xs:element name="msClassmark" type="xs:string" minOccurs="0" /> <xs:element name="answerTime" type="xs:string" minOccurs="0" /> <xs:element name="releaseTime" type="xs:string" minOccurs="0" /> <xs:element name="callDuration" type="xs:string" minOccurs="0" /> <xs:element name="causeForTerm" type="xs:string" minOccurs="0" /> <xs:element name="callReference" type="xs:string" minOccurs="0" /> <xs:element name="gsm-SCFAddress" type="xs:string" minOccurs="0" /> <xs:element name="serviceKey" type="xs:string" minOccurs="0" /> <xs:element name="networkCallReference" type="xs:string" minOccurs="0" /> <xs:element name="mSCAddress" type="xs:string" minOccurs="0" /> <xs:element name="speechVersionSupported" type="xs:string" minOccurs="0" /> <xs:element name="speechVersionUsed" type="xs:string" minOccurs="0" /> <xs:element name="numberOfDPEncountered" type="xs:string" minOccurs="0" /> <xs:element name="levelOfCAMELService" type="xs:string" minOccurs="0" /> <xs:element name="freeFormatData" type="xs:string" minOccurs="0" /> <xs:element name="classmark3" type="xs:string" minOccurs="0" /> <xs:element name="mscOutgoingCircuit" type="xs:string" minOccurs="0" /> <xs:element name="orgRNCorBSCId" type="xs:string" minOccurs="0" /> <xs:element name="orgMSCId" type="xs:string" minOccurs="0" /> <xs:element name="calledIMSI" type="xs:string" minOccurs="0" /> <xs:element name="globalAreaID" type="xs:string" minOccurs="0" /> <xs:element name="subscriberCategory" type="xs:string" minOccurs="0" /> <xs:element name="firstmccmnc" type="xs:string" minOccurs="0" /> <xs:element name="lastmccmnc" type="xs:string" minOccurs="0" /> <xs:element ref="mscIncomingROUTE" minOccurs="0" maxOccurs="unbounded" /> <xs:element ref="mscOutgoingROUTE" minOccurs="0" maxOccurs="unbounded" /> <xs:element ref="location" minOccurs="0" maxOccurs="unbounded" /> <xs:element ref="basicService" minOccurs="0" maxOccurs="unbounded" /> <xs:element ref="radioChanRequested" minOccurs="0" maxOccurs="unbounded" /> <xs:element ref="radioChanUsed" minOccurs="0" maxOccurs="unbounded" /> <xs:element ref="diagnostics" minOccurs="0" maxOccurs="unbounded" /> <xs:element ref="additionalChgInfo" minOccurs="0" maxOccurs="unbounded" /> <xs:element ref="systemType" minOccurs="0" maxOccurs="unbounded" /> <xs:element ref="chargedParty" minOccurs="0" maxOccurs="unbounded" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="mtCallRecord" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="recordType" type="xs:string" minOccurs="0" /> <xs:element name="servedIMSI" type="xs:string" minOccurs="0" /> <xs:element name="servedIMEI" type="xs:string" minOccurs="0" /> <xs:element name="servedMSISDN" type="xs:string" minOccurs="0" /> <xs:element name="callingNumber" type="xs:string" minOccurs="0" /> <xs:element name="recordingEntity" type="xs:string" minOccurs="0" /> <xs:element name="msClassmark" type="xs:string" minOccurs="0" /> <xs:element name="answerTime" type="xs:string" minOccurs="0" /> <xs:element name="releaseTime" type="xs:string" minOccurs="0" /> <xs:element name="callDuration" type="xs:string" minOccurs="0" /> <xs:element name="causeForTerm" type="xs:string" minOccurs="0" /> <xs:element name="callReference" type="xs:string" minOccurs="0" /> <xs:element name="networkCallReference" type="xs:string" minOccurs="0" /> <xs:element name="mSCAddress" type="xs:string" minOccurs="0" /> <xs:element name="speechVersionSupported" type="xs:string" minOccurs="0" /> <xs:element name="speechVersionUsed" type="xs:string" minOccurs="0" /> <xs:element name="classmark3" type="xs:string" minOccurs="0" /> <xs:element name="roamingNumber" type="xs:string" minOccurs="0" /> <xs:element name="mscIncomingCircuit" type="xs:string" minOccurs="0" /> <xs:element name="orgRNCorBSCId" type="xs:string" minOccurs="0" /> <xs:element name="orgMSCId" type="xs:string" minOccurs="0" /> <xs:element name="globalAreaID" type="xs:string" minOccurs="0" /> <xs:element name="subscriberCategory" type="xs:string" minOccurs="0" /> <xs:element name="firstmccmnc" type="xs:string" minOccurs="0" /> <xs:element name="lastmccmnc" type="xs:string" minOccurs="0" /> <xs:element ref="mscIncomingROUTE" minOccurs="0" maxOccurs="unbounded" /> <xs:element ref="mscOutgoingROUTE" minOccurs="0" maxOccurs="unbounded" /> <xs:element ref="location" minOccurs="0" maxOccurs="unbounded" /> <xs:element ref="basicService" minOccurs="0" maxOccurs="unbounded" /> <xs:element name="supplServicesUsed" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="SuppServiceUsedid" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="ssCode" type="xs:string" minOccurs="0" /> <xs:element name="ssTime" type="xs:string" minOccurs="0" /> </xs:sequence>

    Read the article

  • C++ Check Substring of a String

    - by user69514
    I'm trying to check whether or not the second argument in my program is a substring of the first argument. The problem is that it only work if the substring starts with the same letter of the string. .i.e Michigan - Mich (this works) Michigan - Mi (this works) Michigan - igan (this doesn't work) #include <stdio.h> #include <string.h> #include <string> using namespace std; bool my_strstr( string str, string sub ) { bool flag = true; int startPosition = -1; char subStart = str.at(0); char strStart; //find starting position for(int i=0; i<str.length(); i++){ if(str.at(i) == subStart){ startPosition = i; break; } } for(int i=0; i<sub.size(); i++){ if(sub.at(i) != str.at(startPosition)){ flag = false; break; } startPosition++; } return flag; } int main(int argc, char **argv){ if (argc != 3) { printf ("Usage: check <string one> <string two>\n"); } string str1 = argv[1]; string str2 = argv[2]; bool result = my_strstr(str1, str2); if(result == 1){ printf("%s is a substring of %s\n", argv[2], argv[1]); } else{ printf("%s is not a substring of %s\n", argv[2], argv[1]); } return 0; }

    Read the article

  • How to restrict a content of string to less than 4MB and save that string in DB using C#

    - by Pranay B
    I'm working on a project where I need to get the Text data from pdf files and dump the whole text in a DB column. With the help of iTextsharp, I got the data and referred it String. But now I need to check whether the string exceeds the 4MB limit or not and if it is exceeding then accept the string data which is less than 4MB in size. This is my code: internal string ReadPdfFiles() { // variable to store file path string filePath = null; // open dialog box to select file OpenFileDialog file = new OpenFileDialog(); // dilog box title name file.Title = "Select Pdf File"; //files to be accepted by the user. file.Filter = "Pdf file (*.pdf)|*.pdf|All files (*.*)|*.*"; // set initial directory of computer system file.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.Desktop); // set restore directory file.RestoreDirectory = true; // execute if block when dialog result box click ok button if (file.ShowDialog() == DialogResult.OK) { // store selected file path filePath = file.FileName.ToString(); } //file path /// use a string array and pass all the pdf for searching //String filePath = @"D:\Pranay\Documentation\Working on SSAS.pdf"; try { //creating an instance of PdfReader class using (PdfReader reader = new PdfReader(filePath)) { //creating an instance of StringBuilder class StringBuilder text = new StringBuilder(); //use loop to specify how many pages to read. //I started from 5th page as Piyush told for (int i = 5; i <= reader.NumberOfPages; i++) { //Read the pdf text.Append(PdfTextExtractor.GetTextFromPage(reader, i)); }//end of for(i) int k = 4096000; //Test whether the string exceeds the 4MB if (text.Length < k) { //return the string text1 = text.ToString(); } //end of if } //end of using } //end try catch (Exception ex) { MessageBox.Show(ex.Message, "Please Do select a pdf file!!", MessageBoxButtons.OK, MessageBoxIcon.Warning); } //end of catch return text1; } //end of ReadPdfFiles() method Do help me!

    Read the article

  • string comparision and counting the key in target [closed]

    - by mesun
    Suppose we want to count the number of times that a key string appears in a target string. We are going to create two different functions to accomplish this task: one iterative, and one recursive. For both functions, you can rely on Python's find function - you should read up on its specifications to see how to provide optional arguments to start the search for a match at a location other than the beginning of the string. For example, find("atgacatgcacaagtatgcat","atgc") #returns the value 5, while find("atgacatgcacaagtatgcat","atgc",6) #returns the value 15, meaning that by starting the search at index 6, #the next match is found at location 15. For the recursive version, you will want to think about how to use your function on a smaller version of the same problem (e.g., on a smaller target string) and then how to combine the result of that computation to solve the original problem. For example, given you can find the first instance of a key string in a target string, how would you combine that result with invocation of the same function on a smaller target string? You may find the string slicing operation useful in getting substrings of string.

    Read the article

  • Get context for search string in text in C#

    - by soundslike
    Given a string text which contains newline there is a search keyword which matches an item within the text. How do I implement the following in C#: searchIdx = search index (starting with 0, then 1, etc. for each successive call to GetSearchContext. Initially start with 0. contextsTxt = string data to search in searchTxt = keyword to search for in contextsTxt numLines = number of lines to return surrounding the searchTxt found (ie. 1 = the line the searchTxt is found on, 2 = the line the searchTxt is found on, 3 = the line above the searchTxt is found on, the line the searchTxt is found on, and the line below the searchTxt is found on) returns the "context" based on the parameters string GetSearchContext(int searchIdx, string contentsTxt, string searchTxt, int numLines); If there's a better function interface to accomplish this feel free to suggest that as well. I tried the following but doesn't seem to work properly all the time: private string GetSearchContext(string contentValue, string search, int numLines) { int searchIdx = contentValue.IndexOf(search); int startIdx = 0; int lastIdx = 0; while (startIdx != -1 && (startIdx = contentValue.IndexOf('\n', startIdx+1)) < searchIdx) { lastIdx = startIdx; } startIdx = lastIdx; if (startIdx < 0) startIdx = 0; int endIdx = searchIdx; int lineCnt = 0; while (endIdx != -1 && lineCnt++ < numLines) { endIdx = contentValue.IndexOf('\n', endIdx + 1); } if (endIdx == -1 || endIdx > contentValue.Length - 1) endIdx = contentValue.Length - 1; string lines = contentValue.Substring(startIdx, endIdx - startIdx + 1); if (lines[0] == '\n') lines = lines.Substring(1); if (lines[lines.Length - 1] == '\n') { lines = lines.Substring(0, lines.Length - 1); } if (lines[lines.Length - 1] == '\r') { lines = lines.Substring(0, lines.Length - 1); } return lines; }

    Read the article

  • boost.test and eclipse

    - by Anton Potapov
    Hi all, I'm using Eclipse CDT and Boost.Test(with Boost.Build). I would like Eclipse to parse output of Boost.Test generated during by run of test suites during build. Does anybody know how to achieve this? Thanks in advance

    Read the article

< Previous Page | 9 10 11 12 13 14 15 16 17 18 19 20  | Next Page >