Make byte array (mkboxar)
Creates a byte array from the given integer values (one or more).
How does it work in the search window?
Select Create column in the search window toolbar, then select the Make byte array operation. You need to specify at least one argument, and you can add as many value arguments as needed:
The data type of the values in the new column is boxar(int1).
The examples in this article use values in a data table generated from this CSV file. If you want to try the example for yourself, download the file and upload it to your domain clicking Data upload in the navigation pane. Name the new table my.upload.sample.data and select Current date as Date parsing type. Learn more about uploading data in Uploading log files.
After receiving the confirmation message, you can access the table from the Finder, selecting my → upload → sample → data. When you upload data from a file, all the information is included in a single column called message. To split the values into different columns, you can use the Split operation. Then you need to transform the strings in the newly created columns into integers using the To Int operation. Click Toggle Query Editor in the search window toolbar and paste the following LINQ query to save time:
select split(message, ";", 16) as posNumbers1
select split(message, ";", 17) as posNumbers2
select int(posNumbers1) as integerValues1
select int(posNumbers2) as integerValues2
my.upload.cample.data table, we want to transform the base64 strings in the integerValues1 and integerValues2 columns into byte arrays. To do it, we will create a new column using the Make byte array operation. Let's call the new column byteArray.
The arguments needed to create the new column are:
- value - integerValues1 column
- value - integerValues2 column
Click Create column and you will see the following result:
How does it work in LINQ?
Use the operator
as... and add the operation syntax to create the new column. This is the syntax for the Make byte array operation:
mkboxar(integer1, integer2, integer3...)
You can copy the following LINQ script and try the above example on the
my.upload.sample.data table. Keep in mind that you must download and upload the file provided before to your Devo domain.
from my.upload.sample.data select split(message, ";", 16) as posNumbers1 select split(message, ";", 17) as posNumbers2 select int(posNumbers1) as integerValues1 select int(posNumbers2) as integerValues2, mkboxar(integerValues1, integerValues2) as byteArray