LlList2String
From Second Life Wiki
| LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
Contents |
Summary
Function: string llList2String( list src, integer index );| 188 | Function ID |
| 0.0 | Forced Delay |
| 10.0 | Energy |
Returns a string that is at index in src.
| • list | src | – | List containing the element of interest. | |
| • integer | index | – | Index of the element of interest. |
index supports negative indexes.
If index describes a location not in src then null string is returned.
If the type of the element at index in src is not a string it is typecast to a string.
| Important: Please read this intro of how to iterate over a list in LSL. |
Caveats
- If index is out of bounds the script continues to execute without an error message.
- When using this function to typecast a list element to a string it will truncated float based types to 6 decimal places.
Examples
//This code demonstrates the differences in typecasting in LSL (and demonstrates how to use the llList2* functions). // Best viewed in Chat History (ctrl-h) default { state_entry() { list my_list = ["a", "0xFF", "0xFF.FF", "1.0e3", 1, 2.0, <1,2,3>, <1,2,3,4>, llGetOwner()]; integer i = 0; integer end = llGetListLength(my_list); for (; i<end; ++i) { llOwnerSay("string=" + llList2String(my_list,i) + "\n integer=" + (string)llList2Integer(my_list,i) + " OR " +(string)((integer)llList2String(my_list,i)) + "\n float=" + (string)llList2Float(my_list,i) + " OR " +(string)((float)llList2String(my_list,i)) + "\n vector=" + (string)llList2Vector(my_list,i) + " OR " +(string)((vector)llList2String(my_list,i)) + "\n rot=" + (string)llList2Rot(my_list,i) + " OR " +(string)((rotation)llList2String(my_list,i)) + "\n key=" + (string)llList2Key(my_list,i) + " OR " +(string)((key)llList2String(my_list,i)) ); } } }
Notes
- If you wish to extract a string from a list that you know will contain only a single item (for example if you extract a single entry from a list using llList2List()), then instead of using
llList2String(myList, 0)you may wish to considering using the more efficient(string)myListas it will produce the same result for single-entry lists with less memory usage due to eliminating a function-call. - To convert a string of hexadecimal notation to integer, call llList2Integer and it will automatically cast the value as decimal integer. To convert that integer back to a string of hexadecimal notation, use a user function like hex.
See Also
Functions
| • | llDumpList2String | |||
| • | llGetListEntryType | |||
| • | llList2Float | |||
| • | llList2Integer | |||
| • | llList2Key |
Articles
| • | Negative Index |
This article wasn't helpful for you? Maybe the related article at the LSL Wiki is able to bring enlightenment.

