Difference between revisions of "Category:LSL CSV"

From Second Life Wiki
Jump to navigation Jump to search
Line 17: Line 17:
</pre>
</pre>


===One Way To Embed Lists in Lists===
===One Way To Embed CSV Lists in CSV Lists===
<pre>
<pre>
list a = [
string a = llList2CSV([
         "<"+llList2CSV(["a", "b", "c"])+">",
         "<"+llList2CSV(["a", "b", "c"])+">",
         "<"+llList2CSV(["d", "e", "f"])+">",
         "<"+llList2CSV(["d", "e", "f"])+">",
         "<"+llList2CSV(["g", "h", "i"])+">"
         "<"+llList2CSV(["g", "h", "i"])+">"
     ];
     ]);
</pre>
</pre>

Revision as of 00:45, 12 April 2007

The most important thing to know about LSL CSV, it's not traditional CSV. It is not RFC 4180.

There are four caveats with LSL CSV.

  1. Spaces are trimmed from the beginning and the end of entries.
  2. Anything following a "<" is considered part of the same item as long as the number of ">" and "<" are unbalanced.
    • All "<" and ">" are included in the output string.
    • Having a ">" before a "<" has no effect on the output, having too many ">" is not an issue.
  3. All Commas not encapsulated in "<" ">" will be treated as deliminators.
  4. Anything datatype containing a float value when converted to a CSV may loose precision.
llCSV2List("<>,>,a")   == ["<>", ">", "a"]; //didn't match the last ">"
llCSV2List("<<>,>,a")  == ["<<>,>", "a"];   //matched everything
llCSV2List("<<<>,>,a") == ["<<<>,>,a"];     //didn't match the last "<"

One Way To Embed CSV Lists in CSV Lists

string a = llList2CSV([
        "<"+llList2CSV(["a", "b", "c"])+">",
        "<"+llList2CSV(["d", "e", "f"])+">",
        "<"+llList2CSV(["g", "h", "i"])+">"
    ]);

Pages in category "LSL CSV"

The following 2 pages are in this category, out of 2 total.