I do contract work for a living, which could include writing a program such as this. However, I don’t do people’s homework for them. That just robs them of an education.
You have my full permission to implement this project any way you please.
java.exe TableSort mytable.html 1 4
means sort all the rows using column 1 as the primary key and column 4 as the secondary tie-breaker key.
After you have that working, tackle the problem of converting a long skinny single-row or a single-column table column into a grid, either by rows or by columns. Then convert it back again to either a single row or single column. You might even also have logic to count the elements, and do a square root to determine the grid size to make a square grid.
Then consider the problem of merging two tables, and selecting columns or rows from the combined table. For example you might want to take two single column tables and merge them to create a single table with two columns. You might want to join the tables by matching a common key using an inner or outer join. Sounds like SQL doesn’t it? Consider implementing the whole reorg utility by importing tables into SQL, doing all your fancy stuff in SQL, then exporting tables. You need to have a way of stripping tags such as <b> so that SQL can sort columns. However you need to keep the tags around for when you export HTML tables again.
A fancier version would let you embed <-- sortkey ardvaark --> commands in each of the cells to use a sorting key other than the visible contents of the cell. That way could could for example sort by significant word in a list of book titles instead of the leading The. It would also let you sort on data not visible to the end user.
I have written a very crude one. I would send it to you by email to help you get started. It uses very primitive parsing.
![]() |
and suggestions to improve this page to Roedy Green : | ||
| Canadian Mind Products | |||
| mindprod.com IP:[65.110.21.43] | |||
| Your face IP:[38.103.63.59] | The information on this page is for non-military use only. | ||
| You are visitor number 4,407. | Military use includes use by defence contractors. | ||
| You can get a fresh copy of this page from: | or possibly from your local J: drive (Java virtual drive/mindprod.com website mirror) | ||
| http://mindprod.com/project/htmltablesorter.html | J:\mindprod\project\htmltablesorter.html | ||