String formatting under a certain character [closed]
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty{ height:90px;width:728px;box-sizing:border-box;
}
I'm making a textbook indexer and I'm formatting the output file. there are periods between the word and its frequency.
desired textfile output:
word..............25:
word...............3:
word...............2:
I'm trying to get the lines to be aligned to the :
but I can't get it under the semicolon if the numbers are more than 1 digit.
Does anybody have any ideas for java string formatting for the desired output?
for reference the biggest word is 23 characters and it's frequency is 1.
java
closed as too broad by Hovercraft Full Of Eels, jww, EJoshuaS, Sotirios Delimanolis, Makyen Nov 17 '18 at 5:12
Please edit the question to limit it to a specific problem with enough detail to identify an adequate answer. Avoid asking multiple distinct questions at once. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.
add a comment |
I'm making a textbook indexer and I'm formatting the output file. there are periods between the word and its frequency.
desired textfile output:
word..............25:
word...............3:
word...............2:
I'm trying to get the lines to be aligned to the :
but I can't get it under the semicolon if the numbers are more than 1 digit.
Does anybody have any ideas for java string formatting for the desired output?
for reference the biggest word is 23 characters and it's frequency is 1.
java
closed as too broad by Hovercraft Full Of Eels, jww, EJoshuaS, Sotirios Delimanolis, Makyen Nov 17 '18 at 5:12
Please edit the question to limit it to a specific problem with enough detail to identify an adequate answer. Avoid asking multiple distinct questions at once. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.
3
First try solving it yourself, and then if still stuck, post your attempt here in your question. This involves simple math and a for loop, and I have faith that you'll either come up with a solution or something very close if you try just a little.
– Hovercraft Full Of Eels
Nov 17 '18 at 2:45
Why would I need a for loop? I'm trying to use Java's String format function. So far I have this: String.format("%s%23d:", getWord(),count ).replace(' ', '.') + lineNumbers; I'm continuing to mess around with it but no dice.
– Dart Feld
Nov 17 '18 at 2:54
Make sure the font you use for your text file is a non-proportional font which would be a font whose letters and characters each occupy the same amount of horizontal space otherwise achieving a descent lineup will be difficult. Courier or MonoSpace821 BT are such fonts.
– DevilsHnd
Nov 17 '18 at 3:01
1
@DevilsHnd: generally text in a text file is font-agnostic.
– Hovercraft Full Of Eels
Nov 17 '18 at 3:04
Please post the current code that you have and we can give you hints a to how to approach the problem. We're not going to hand you an answer to an obvious homework question.
– John Kim
Nov 17 '18 at 3:05
add a comment |
I'm making a textbook indexer and I'm formatting the output file. there are periods between the word and its frequency.
desired textfile output:
word..............25:
word...............3:
word...............2:
I'm trying to get the lines to be aligned to the :
but I can't get it under the semicolon if the numbers are more than 1 digit.
Does anybody have any ideas for java string formatting for the desired output?
for reference the biggest word is 23 characters and it's frequency is 1.
java
I'm making a textbook indexer and I'm formatting the output file. there are periods between the word and its frequency.
desired textfile output:
word..............25:
word...............3:
word...............2:
I'm trying to get the lines to be aligned to the :
but I can't get it under the semicolon if the numbers are more than 1 digit.
Does anybody have any ideas for java string formatting for the desired output?
for reference the biggest word is 23 characters and it's frequency is 1.
java
java
edited Nov 17 '18 at 17:12
EJoshuaS
7,440103051
7,440103051
asked Nov 17 '18 at 2:44
Dart FeldDart Feld
64
64
closed as too broad by Hovercraft Full Of Eels, jww, EJoshuaS, Sotirios Delimanolis, Makyen Nov 17 '18 at 5:12
Please edit the question to limit it to a specific problem with enough detail to identify an adequate answer. Avoid asking multiple distinct questions at once. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.
closed as too broad by Hovercraft Full Of Eels, jww, EJoshuaS, Sotirios Delimanolis, Makyen Nov 17 '18 at 5:12
Please edit the question to limit it to a specific problem with enough detail to identify an adequate answer. Avoid asking multiple distinct questions at once. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.
3
First try solving it yourself, and then if still stuck, post your attempt here in your question. This involves simple math and a for loop, and I have faith that you'll either come up with a solution or something very close if you try just a little.
– Hovercraft Full Of Eels
Nov 17 '18 at 2:45
Why would I need a for loop? I'm trying to use Java's String format function. So far I have this: String.format("%s%23d:", getWord(),count ).replace(' ', '.') + lineNumbers; I'm continuing to mess around with it but no dice.
– Dart Feld
Nov 17 '18 at 2:54
Make sure the font you use for your text file is a non-proportional font which would be a font whose letters and characters each occupy the same amount of horizontal space otherwise achieving a descent lineup will be difficult. Courier or MonoSpace821 BT are such fonts.
– DevilsHnd
Nov 17 '18 at 3:01
1
@DevilsHnd: generally text in a text file is font-agnostic.
– Hovercraft Full Of Eels
Nov 17 '18 at 3:04
Please post the current code that you have and we can give you hints a to how to approach the problem. We're not going to hand you an answer to an obvious homework question.
– John Kim
Nov 17 '18 at 3:05
add a comment |
3
First try solving it yourself, and then if still stuck, post your attempt here in your question. This involves simple math and a for loop, and I have faith that you'll either come up with a solution or something very close if you try just a little.
– Hovercraft Full Of Eels
Nov 17 '18 at 2:45
Why would I need a for loop? I'm trying to use Java's String format function. So far I have this: String.format("%s%23d:", getWord(),count ).replace(' ', '.') + lineNumbers; I'm continuing to mess around with it but no dice.
– Dart Feld
Nov 17 '18 at 2:54
Make sure the font you use for your text file is a non-proportional font which would be a font whose letters and characters each occupy the same amount of horizontal space otherwise achieving a descent lineup will be difficult. Courier or MonoSpace821 BT are such fonts.
– DevilsHnd
Nov 17 '18 at 3:01
1
@DevilsHnd: generally text in a text file is font-agnostic.
– Hovercraft Full Of Eels
Nov 17 '18 at 3:04
Please post the current code that you have and we can give you hints a to how to approach the problem. We're not going to hand you an answer to an obvious homework question.
– John Kim
Nov 17 '18 at 3:05
3
3
First try solving it yourself, and then if still stuck, post your attempt here in your question. This involves simple math and a for loop, and I have faith that you'll either come up with a solution or something very close if you try just a little.
– Hovercraft Full Of Eels
Nov 17 '18 at 2:45
First try solving it yourself, and then if still stuck, post your attempt here in your question. This involves simple math and a for loop, and I have faith that you'll either come up with a solution or something very close if you try just a little.
– Hovercraft Full Of Eels
Nov 17 '18 at 2:45
Why would I need a for loop? I'm trying to use Java's String format function. So far I have this: String.format("%s%23d:", getWord(),count ).replace(' ', '.') + lineNumbers; I'm continuing to mess around with it but no dice.
– Dart Feld
Nov 17 '18 at 2:54
Why would I need a for loop? I'm trying to use Java's String format function. So far I have this: String.format("%s%23d:", getWord(),count ).replace(' ', '.') + lineNumbers; I'm continuing to mess around with it but no dice.
– Dart Feld
Nov 17 '18 at 2:54
Make sure the font you use for your text file is a non-proportional font which would be a font whose letters and characters each occupy the same amount of horizontal space otherwise achieving a descent lineup will be difficult. Courier or MonoSpace821 BT are such fonts.
– DevilsHnd
Nov 17 '18 at 3:01
Make sure the font you use for your text file is a non-proportional font which would be a font whose letters and characters each occupy the same amount of horizontal space otherwise achieving a descent lineup will be difficult. Courier or MonoSpace821 BT are such fonts.
– DevilsHnd
Nov 17 '18 at 3:01
1
1
@DevilsHnd: generally text in a text file is font-agnostic.
– Hovercraft Full Of Eels
Nov 17 '18 at 3:04
@DevilsHnd: generally text in a text file is font-agnostic.
– Hovercraft Full Of Eels
Nov 17 '18 at 3:04
Please post the current code that you have and we can give you hints a to how to approach the problem. We're not going to hand you an answer to an obvious homework question.
– John Kim
Nov 17 '18 at 3:05
Please post the current code that you have and we can give you hints a to how to approach the problem. We're not going to hand you an answer to an obvious homework question.
– John Kim
Nov 17 '18 at 3:05
add a comment |
1 Answer
1
active
oldest
votes
Since in the comment, the OP attempted to use String.format()
, here is an approach to consider. Rather than trying to get the number to align right with the "%23d", align the word and the count separately.
String.format("%-23s%2d:", getWord(), count);
The %-23d
will format the getWord()
in 23 spaces, left aligned, then the %2d
will right align the "count".
Example output:
Hello...................9:
Goodbye................42:
whatever...............17:
Note I just used the same .replace()
approach as the OP for quickness sake.
See this attempt here at ideone.com
add a comment |
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
Since in the comment, the OP attempted to use String.format()
, here is an approach to consider. Rather than trying to get the number to align right with the "%23d", align the word and the count separately.
String.format("%-23s%2d:", getWord(), count);
The %-23d
will format the getWord()
in 23 spaces, left aligned, then the %2d
will right align the "count".
Example output:
Hello...................9:
Goodbye................42:
whatever...............17:
Note I just used the same .replace()
approach as the OP for quickness sake.
See this attempt here at ideone.com
add a comment |
Since in the comment, the OP attempted to use String.format()
, here is an approach to consider. Rather than trying to get the number to align right with the "%23d", align the word and the count separately.
String.format("%-23s%2d:", getWord(), count);
The %-23d
will format the getWord()
in 23 spaces, left aligned, then the %2d
will right align the "count".
Example output:
Hello...................9:
Goodbye................42:
whatever...............17:
Note I just used the same .replace()
approach as the OP for quickness sake.
See this attempt here at ideone.com
add a comment |
Since in the comment, the OP attempted to use String.format()
, here is an approach to consider. Rather than trying to get the number to align right with the "%23d", align the word and the count separately.
String.format("%-23s%2d:", getWord(), count);
The %-23d
will format the getWord()
in 23 spaces, left aligned, then the %2d
will right align the "count".
Example output:
Hello...................9:
Goodbye................42:
whatever...............17:
Note I just used the same .replace()
approach as the OP for quickness sake.
See this attempt here at ideone.com
Since in the comment, the OP attempted to use String.format()
, here is an approach to consider. Rather than trying to get the number to align right with the "%23d", align the word and the count separately.
String.format("%-23s%2d:", getWord(), count);
The %-23d
will format the getWord()
in 23 spaces, left aligned, then the %2d
will right align the "count".
Example output:
Hello...................9:
Goodbye................42:
whatever...............17:
Note I just used the same .replace()
approach as the OP for quickness sake.
See this attempt here at ideone.com
answered Nov 17 '18 at 3:31
KevinOKevinO
3,50142031
3,50142031
add a comment |
add a comment |
3
First try solving it yourself, and then if still stuck, post your attempt here in your question. This involves simple math and a for loop, and I have faith that you'll either come up with a solution or something very close if you try just a little.
– Hovercraft Full Of Eels
Nov 17 '18 at 2:45
Why would I need a for loop? I'm trying to use Java's String format function. So far I have this: String.format("%s%23d:", getWord(),count ).replace(' ', '.') + lineNumbers; I'm continuing to mess around with it but no dice.
– Dart Feld
Nov 17 '18 at 2:54
Make sure the font you use for your text file is a non-proportional font which would be a font whose letters and characters each occupy the same amount of horizontal space otherwise achieving a descent lineup will be difficult. Courier or MonoSpace821 BT are such fonts.
– DevilsHnd
Nov 17 '18 at 3:01
1
@DevilsHnd: generally text in a text file is font-agnostic.
– Hovercraft Full Of Eels
Nov 17 '18 at 3:04
Please post the current code that you have and we can give you hints a to how to approach the problem. We're not going to hand you an answer to an obvious homework question.
– John Kim
Nov 17 '18 at 3:05