Author Posts

April 30, 2018 at 6:31 am

Hi Team,

I am trying to take multiple number input by user separated by comma and storing it into an array. After that trying to convert the value using convert CSV but not getting fruitful result. May be I am doing some conceptual mistakes. Can you please rectify me.

$arr = @()
$arr = Read-Host " Please input numbers" |ConvertTo-Csv -Delimiter ","

The output I am getting if I input 10,20,30.

PS C:\windows\system32> $arr
#TYPE System.String
"Length"
"8"

Need your support.

Regards,
Roy.

April 30, 2018 at 6:41 am

Read-Host takes the input and creates one big string. If you like to split this in seperate numbers you will have to do it by yourself. ConvertTo-CSV would need some type or header information to work properly. It's more ConvertFrom-CSV what you're trying to do ...

April 30, 2018 at 6:54 am

Agreed again. You've just got a basic misunderstanding about how the shell works ;).

$arr in your script is not an array. It's a big string. Assuming the user typed something like:

1,2,3,4,5

You could make an array by using

$arr = $arr -split “,”

April 30, 2018 at 8:56 am

Great... Split works as exactly what I am expecting. Thanks a lot. Thanks again for pointing out my mistakes.