07-11-2013
Special character ^@ in CSV file
All,
I am having a tough time with Linux and CSV file. My CSV file gets generated from Cognos on Linux machine that contains special characters. At first instance when I do vi <filename> to that file, I can't see anything. I did tail -2 and redirected to another temp file and did vi <filename>, I can see control characters ^@. I can remove those characters manually by using :%s/^@//g in vi editor. But, the process need to be done automatically as its all automated. Its needs to be done from shell script. The same file came with some other special character in Solaris and was easy to remove.
Any help would be appreciated.
9 More Discussions You Might Find Interesting
1. Solaris
Hi together
I have 2 systems, mars and venus. The configuration is the same. Every system has a SDLT. I will now backup the datas from mars on the tapedevice from venus.
I have shareed the tapedevice (venus) and mounted on mars.
Now my problem: when I write on the mountet tapedevice, the... (1 Reply)
Discussion started by: MuellerUrs
1 Replies
2. UNIX for Dummies Questions & Answers
I'm having problems deleting a file with a special character and I'm hoping that somebody here can help. The file "-osample1.c" will not remove from my directory. Here is an example of what happens. Any ideas would be appreciated.
> ls *sample1*
ls: illegal option -- .
usage: ls... (2 Replies)
Discussion started by: hart1165
2 Replies
3. Shell Programming and Scripting
hi
i want to delete a particular character in file.
example
file name:abcsample
abc=bbbqw3/
hidh=ajjqiwio4/
xyx=hakjp/
........../
......./
i want to delete that special character (/) in abcsample file.please give the required commands for my requirement.
thank you (3 Replies)
Discussion started by: srivsn
3 Replies
4. Shell Programming and Scripting
hi
i want to delete a particular character in file.
example
file name:abcsample
abc=bbbqw3/
hidh=ajjqiwio4/
xyx=hakjp/
........../
......./
i want to delete that special character (/) in abcsample file Permnently.please give the required commands for my requirement.
required... (1 Reply)
Discussion started by: srivsn
1 Replies
5. UNIX for Dummies Questions & Answers
I have a special character in my file. It displays as a '#' sign but when I do this command I do not find the line.
fgrep 'G#ant' file1
I want to replace the special character with another value but I need to know what character it really is. Any ideas on how to replace this '#' value with... (3 Replies)
Discussion started by: Ryan2786
3 Replies
6. Shell Programming and Scripting
hello,
How to parse a file to see if a specific line is commented by '#' character?
filename: file1
cat file1
...
# /usr/bin/whatever
...
thank you (9 Replies)
Discussion started by: melanie_pfefer
9 Replies
7. Shell Programming and Scripting
Hi,
My file has this special character "^M"
I would like to remove this characters.
eg:
abc,abc,^M
i tried using sed but doesnt work.
i used octal dump command to see special character it returns following:
015
\r
Appreciate your reply. (6 Replies)
Discussion started by: pinnacle
6 Replies
8. Shell Programming and Scripting
Hello
I've searched here and on the 'net for examples of a script or command line function that will remove the $ character from all file names only that can be done within the directory that contains the file names - which are all html files.
ie, I have a directory that contains html files... (6 Replies)
Discussion started by: competitions
6 Replies
9. Shell Programming and Scripting
Hi All -
I am new to unix and scripting. I was asked to export a sql output into .csv format and email the attachment. I could do this however i see some square like boxes or special char at the end of the headings and data values in .csv file. I could not fix this and will need your help.
... (5 Replies)
Discussion started by: Sanchalla
5 Replies
FGETCSV(3) 1 FGETCSV(3)
fgetcsv - Gets line from file pointer and parse for CSV fields
SYNOPSIS
array fgetcsv (resource $handle, [int $length], [string $delimiter = ","], [string $enclosure = '"'], [string $escape = "
DESCRIPTION
Similar to fgets(3) except that fgetcsv(3) parses the line it reads for fields in CSV format and returns an array containing the fields
read.
PARAMETERS
o $handle
- A valid file pointer to a file successfully opened by fopen(3), popen(3), or fsockopen(3).
o $length
- Must be greater than the longest line (in characters) to be found in the CSV file (allowing for trailing line-end characters).
It became optional in PHP 5. Omitting this parameter (or setting it to 0 in PHP 5.1.0 and later) the maximum line length is not
limited, which is slightly slower.
o $delimiter
- The optional $delimiter parameter sets the field delimiter (one character only).
o $enclosure
- The optional $enclosure parameter sets the field enclosure character (one character only).
o $escape
- The optional $escape parameter sets the escape character (one character only).
RETURN VALUES
Returns an indexed array containing the fields read.
Note
A blank line in a CSV file will be returned as an array comprising a single null field, and will not be treated as an error.
Note
If PHP is not properly recognizing the line endings when reading files either on or created by a Macintosh computer, enabling the
auto_detect_line_endings run-time configuration option may help resolve the problem.
fgetcsv(3) returns NULL if an invalid $handle is supplied or FALSE on other errors, including end of file.
CHANGELOG
+--------+---------------------------------------------------+
|Version | |
| | |
| | Description |
| | |
+--------+---------------------------------------------------+
| 5.3.0 | |
| | |
| | The $escape parameter was added |
| | |
| 5.1.0 | |
| | |
| | The $length is now optional. Default is 0, mean- |
| | ing no length limit. |
| | |
| 4.3.5 | |
| | |
| | fgetcsv(3) is now binary safe |
| | |
+--------+---------------------------------------------------+
EXAMPLES
Example #1
Read and print the entire contents of a CSV file
<?php
$row = 1;
if (($handle = fopen("test.csv", "r")) !== FALSE) {
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
$num = count($data);
echo "<p> $num fields in line $row: <br /></p>
";
$row++;
for ($c=0; $c < $num; $c++) {
echo $data[$c] . "<br />
";
}
}
fclose($handle);
}
?>
NOTES
Note
Locale setting is taken into account by this function. If $LANG is e.g. en_US.UTF-8, files in one-byte encoding are read wrong by
this function.
SEE ALSO
str_getcsv(3), explode(3), file(3), pack(3), fputcsv(3).
PHP Documentation Group FGETCSV(3)