Alternatively, you can do it this way:
$props = @{}
Get-Content c:\temp\x.txt |
ForEach-Object{
if ($_.Trim().Length -gt 0){
[array]$parts = @()
Switch -Regex ($_){
"^Date:\s\d\d?/\d\d?/\d\d\d\d" {$parts =$_ -split ": "; $props[$parts[0].trim()] = $parts[1].trim(); break}
"^Code:\s\w+" {$parts =$_ -split ": "; $props[$parts[0].trim()] = $parts[1].trim(); break}
"^Description:\s" {$parts =$_ -split ": "; $props[$parts[0].trim()] = $parts[1].trim(); break}
"^Qty:\s\d+" {$parts =$_ -split ": "; $props[$parts[0].trim()] = $parts[1].trim(); break}
"^District:\s\d+" {$parts =$_ -split ": "; $props[$parts[0].trim()] = $parts[1].trim(); break}
"^==================" {[PSCustomObject]$props; $props.Clear(); break}
}
}
} | Export-CSV c:\junk\stuff.csv -NoTypeInformation