title: Output a hashtable of Arrays in Powershell
body: <p>I am at my wits end.  I am new to powershell and I have tried everything I have been able to find on this subject online.  What I am trying to do is print a hashtable of arrays to a file without the stupid ellipsis appearing at the end of each array value.  Below is my best attempt.</p>
  
  <pre><code># Update output buffer size to prevent clipping in output window.
  if( $Host -and $Host.UI -and $Host.UI.RawUI ) 
  {
     $rawUI = $Host.UI.RawUI
     $oldSize = $rawUI.BufferSize
     $typeName = $oldSize.GetType( ).FullName
     $newSize = New-Object $typeName (1000, $oldSize.Height)
     $rawUI.BufferSize = $newSize
  }
  
  # Suposedly to allow enumeration in formatting to be unlimited
  $formatenumerationlimit = -1
  
  $Dir = get-childitem c:\SomeFolderWithFiles -recurse
  $List = $Dir | where {$_.extension -eq ".hash"} | where-object {$_ -ne $null}
  $lookupTable = @{}
  Foreach ($element in $List)
  {
      #Get the type of file from filename
      $PSV_Type = $element.Name.Substring(0, $element.Name.indexOf("."))
      #Get the date sent from filename
      $Date_Sent = $element.Name.Substring($element.Name.length - 20,8)
  
      #Populate hashTable
      .....
  }
  $columns = @{Expression={$_.Name};Label="Date_Sent";width=12}, @{Expression={$_.Value};Label="PSV_Types";width=1000}
  $lookupTable.GetEnumerator() | Sort-Object Name | Format-Table $columns | out-file C:\hashFiles.txt -width 1012
  </code></pre>
  
  <p>Now after all this, I still get this as a result:</p>
  
  <blockquote>
    <p>Date_Sent     PSV_Types<br>
    ---------     ---------<br>
    20091201     {31, ALLOCATIONS, AUDIT_TRAIL, BOOKS...}<br>
    20091202     {31, ALLOCATIONS, AUDIT_TRAIL, BOOKS...}<br>
    20091203     {31, ALLOCATIONS, AUDIT_TRAIL, BOOKS...}<br>
    20091204     {31, ALLOCATIONS, AUDIT_TRAIL, BOOKS...}<br>
    20091207     {31, ALLOCATIONS, AUDIT_TRAIL, BOOKS...}<br>
    20091208     {31, ALLOCATIONS, AUDIT_TRAIL, BOOKS...}<br>
    20091209     {31, ALLOCATIONS, AUDIT_TRAIL, BOOKS...}<br>
    20091210     {31, ALLOCATIONS, AUDIT_TRAIL, BOOKS...}<br>
    20091211     {31, ALLOCATIONS, AUDIT_TRAIL, BOOKS...}<br>
    20091214     {31, ALLOCATIONS, AUDIT_TRAIL, BOOKS...}<br>
    20091215     {31, ALLOCATIONS, AUDIT_TRAIL, BOOKS...}   </p>
  </blockquote>
  
  <p>Someone wiser in the ways of powershell please tell me what I am missing.  How do I get rid of these bloody ellipsis at the end and just write all the members of the array no matter how many there are?  Do I have to just roll some ghetto solution by building a big string buffer and outputting that to a file or is there a better way to do this?</p>
  
  <p>Thanks.</p>