Solved

Batch file to remove commas from a different file.

Posted on 2004-09-01
7
1,190 Views
Last Modified: 2010-08-05
I need to run a command from a batch file that removes commas from a specified file.  Not too bothered what it does with them, either remove completely or replace with another character.

This is to stop user entered commas from messing up my format in a .CSV file.

Many thanks in advance!

Ian
0
Comment
Question by:IanWood
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 2
7 Comments
 
LVL 67

Expert Comment

by:sirbounty
ID: 11951377
Munge would probably be the easiest way to achieve this:
http://www.petri.co.il/download_free_reskit_tools.htm

If you're opposed to that idea, can you post a portion of your file along with what operating system you're using?
0
 

Author Comment

by:IanWood
ID: 11951490
I don't really want to start using 3rd party uliities to do this if I can help it.

The file is a bog standard text file (seperated by |'s) :-

H||Mrs|Elizabeth|Jones|7 wood Drive|Four Trees|Sutton|West Midlands|B74 5RD|01564 353 43334|liz@hotmail.com|Y|Mrs Elizabeth Jones|7 Wood Drive|Four Trees|Sutton|West Midlands|B74 5RD|Mrs Elizabeth Jones|7 wood Drive|Four Trees|Sutton|West Midlands|B74 5RD|VI|1234556578912345678|1102|1204||181927|280804|09:05|850|13|
D|26153|Sensitive Moisturising Body Lotion - 250ml|400|3|1200|
D|30064|30064|250|1|250|

I'm running XP, but any solution should ideally work on 2000 as well.

Thanks!
0
 
LVL 67

Accepted Solution

by:
sirbounty earned 100 total points
ID: 11951640
Ok - XP is what I'm using, so this should work for you....

Before (I added a couple of commas to test):
H||Mrs|Elizabeth|Jones|7 wood, Drive|Four, Trees|Sutton|West, Midlands|B74 5RD|01564 353 43334|liz@hotmail.com|Y|Mrs Elizabeth Jones|7 Wood Drive|Four Trees|Sutton|West Midlands|B74 5RD|Mrs Elizabeth Jones|7 wood Drive|Four Trees|Sutton|West Midlands|B74 5RD|VI|1234556578912345678|1102|1204||181927|280804|09:05|850|13|
D|26153|Sensitive, Moisturising Body Lotion - 250ml|400|3|1200|
D|30064|30064|250|1|250|


After:
H||Mrs|Elizabeth|Jones|7 wood Drive|Four Trees|Sutton|West Midlands|B74 5RD|01564 353 43334|liz@hotmail.com|Y|Mrs Elizabeth Jones|7 Wood Drive|Four Trees|Sutton|West Midlands|B74 5RD|Mrs Elizabeth Jones|7 wood Drive|Four Trees|Sutton|West Midlands|B74 5RD|VI|1234556578912345678|1102|1204||181927|280804|09:05|850|13|
D|26153|Sensitive Moisturising Body Lotion - 250ml|400|3|1200|
D|30064|30064|250|1|250|


::-------begin code---------
@echo off
for /f "delims=" %%a in (test.txt) do call :process "%%a"
goto :eof

:process
set strData=%1
set strData=%strData:,=%
for /f "delims=" %%x in (%strData%) do echo %%x >> testnew.txt
::-------end code-----------

Not my prettiest coding, but effective.  Let me know if that will work for you...
0
Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 
LVL 2

Expert Comment

by:Drew Lake
ID: 11951723
I really don't know much about scripting but here is a site:  http://www.easydos.com/dosindex.html

I would think you would have to use the: IF, FIND, and DEL command in one string.  Good Luck and I hope this helps.
0
 

Author Comment

by:IanWood
ID: 11952129
SirBounty, That seems to work fine.  one thing, is there anyway to keep the original filename?  

Thanks!
0
 
LVL 67

Expert Comment

by:sirbounty
ID: 11952176
If you're reading it line by line, then you'll have to export it into another file (I think munge will allow this).
For the code above though, simply add the following just before the goto :eof line:

if exist testnew.txt del test.txt
ren testnew.txt test.txt
0

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

TOMORROW TOMORROW.BAT is inspired by a question I get asked over and over again; that is, "How can I use batch file commands to obtain tomorrow's date?" The crux of this batch file revolves around the XCOPY command - a technique I discovered w…
Being a system administrator some time we require to do things remotely, one of them is installing software. Here I am going to tell you how to install software through wmic (Windows management instrument console). I am not at all saying that this i…
I've attached the XLSM Excel spreadsheet I used in the video and also text files containing the macros used below. https://filedb.experts-exchange.com/incoming/2017/03_w12/1151775/Permutations.txt https://filedb.experts-exchange.com/incoming/201…
Suggested Courses

752 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question